Lachu opracowanie otwarte Kerto Nieznany

background image

1. 3 najważniejsze cechy oprogramowania systemowego
Przystosowane do jednego typu (rodziny) procesora.
Szybkie, kod zajmuje mało miejsca w porównaniu z podobnymi funkcjami w HLL.
Posiada bezpośredni dostęp do sprzętu.

Realizuje funkcje konieczne do działania systemu komputerowego.
Użytkownik nie ma z nim bezpośredniej styczności.

2. Czy można uruchomid program napisany dla danego typu procesora na innym
procesorze?

Nie można, gdyż oprogramowanie systemowe wykorzystuje architekturę konkretnego
procesora.
3. Opisz tablicę asemblacji (Co zawiera tablica kodu instrukcji asemblacji na kod
maszynowy. Ogólnie chodzi o tablicę używaną przy asemblacji )

Dokładnie nie wiem o co chodzi.

Plik źródłowy zawiera instrukcje, tłumaczone bezpośrednio na kod oraz nie tłumaczone
dyrektywy i etykiety. Na czas asemblacji powstaje tablica symboli, zawierająca używane
podczas tłumaczenia symbole (np. LOOP, START), czyli nazwy etykiet i ich adresy oraz stałe
stworzone przez dyrektywę EQU wraz z ich wartościami. Tablica tworzona jest przy
pierwszym przejściu asemblera i wykorzystywana w drugiej części.

W drugim przejściu

powstaje też tablica używana przez konsolidator, zawierająca m.in. informacje relokacyjne.

4. Asemblacja warunkowa - do czego się używa
Używamy gdy chcemy wygenerowad kilka różnych programów w zależności od warunków
zewnętrznych (sprzęt, czas, istnienie innego oprogramowania).

Podczas debugowania można

użyd do wyłączania lub włączania różnych fragmentów kodu, aby zobaczyd jakie warianty
zadziałają najlepiej.

5. Działanie makroinstrukcji z parametrami
Gdy wywołamy makro z parametrami, to zostaną one wstawione jako tekst w miejsce ich
wystąpienia w makrodefinicji. Parametry nie zostaną przekazane w sensie zapisania danych
w pamięci.Tekst całej makrodefinicji zostaje wstawiony razem z odpowiednimi parametrami
w miejscu jej wywołania.
6. Co należy poddad modyfikacji przy relokacji?
Wszystkie adresy oraz obliczone za ich pomocą wartości.

Również adresy etykiet (gdyż w

uproszczeniu wartością etykiety jest adres).

7. Konsolidacja modularna (skąd wiadomo, że coś tam jest modułem czy coś takiego)
Aby konsolidator wiedział, gdzie ma szukad odpowiednich procedur, niezbędne jest użycie
dyrektyw PUBLIC i EXTERN. Jeżeli program jest zawarty w kilku plikach źródłowych, to każdy
jest z punktu widzenia asemblera równoprawnym modułem, zatem występowanie
dyrektywy PUBLIC bądź EXTERN warunkuje budowę modularną programu.
8. Konsolidacja dynamiczna
Polega na tym, że odpowiednie moduły ładowane są dopiero wtedy, gdy podczas
wykonywnia programu zaistnieje potrzeba skorzystania z funkcji w nich zawartych.
9. Parametr wejścia-wyjścia
Parametr taki zawiera dane przekazywane do funkcji, w celu dokonania odpowiednich
obliczeo i zwrócenia przez niego ich wartości. Jest wskaźnikiem do zmiennej umieszczonej w
pamięci.
10. Kiedy można używad przekazywania parametrów w kodzie programów.

Gdy jesteśmy pewni, że parametr zawsze będzie miał tą samą wartośd.

background image

Grupa 2:
1. Podaj schemat działania przy projektowaniu programu aplikacyjnego
Określenie konkretnego działania programu i jego wymagao.
Sporządzenie schematu blokowego.
Napisanie programu.
Asemblacja programu.
Testowanie i debugowanie programu.

Gdzieś na slajdach jest dokładnie to rozrysowane.

2. Jak zaznaczamy typ adresowania
Wprowadzając przed lub po nazwą zmiennej (wartością) odpowiedni symbol:
# - adresowanie natychmiastowe np. #10
@ - adresowanie przez odwołanie np. @0x124312
Gdy nic nie zmieniamy to mamy adresowanie bezpośrednie np. LED
3. Jaką modyfikację należy wykonad aby program był konsolidowany dynamicznie
W miejsca odwołan bibliotecznych wstawic trzeba zakładki - wprowadza na swoje miejsce
adres potrzebnego podprogramu i powoduje jego wykonanie.
Trzeba utworzyd moduły i zrobid z nich biblioteki z funkcjami, które będą ładowane na
bieżąco w trakcie wykonywania programu(musi mied budowe modularną).

W pamięci operacyjnej konieczne jest rezydowanie loadera dynamicznego.

4. Jak rozwiązad problem odwołao do przodu
Skorzystac z asemblera dwuprzejsciowego, który w pierwszym przejściu tworzy tablicę
symboli (odwołao) z której korzysta przy drugim przejściu.
5. Co to jest makroinstrukcja
Jest to częśd programu napisanego w języku asemblera, interpretowana przez
makroasembler. Zawiera kod programu, który w trakcie asemblacji zostanie podstawiony w
miejsce jej wywołania.
6. Co zawiera plik wynikowy
Nagłówek z informacją o pliku.
Kod maszynowy-wynikowy.
Tablicę relokacji.
Dodatkowe informacje przydatne np. przy debugingu (numery wierszy itd.)

Zawartośd jest zależna od formatu pliku.

7. Co zawiera plik wynikowy programu konsolidowanego

Informacja nagłówkowa = długości poszczególnych segmentów i adres pierwszej instrukcji
programu.
Segment programu – zawiera kod maszynowy.
Segment danych – zawiera dane o zainicjowanych wartosciach.
Tablicę relokacji.
Tablicę symboli zdefiniowanych za pomocą EXTERN (w bieżącym module).
Tablicę symboli zdefiniowanych w innych modułach z użyciem PUBLIC.
8. Na czym polega przekazywanie przez odwołanie
Przekazywany jest adres zmiennej (pod którym jest zapisana w pamięci), na podstawie
którego zostaje wyłuskana potrzebna wartośd.
9. Jak zwrocic błąd z procedury?
Po prostu przyjmując jakąś wartośd zwróconą przez parametr wyjściowy lub wejściowo-
wyjściowy jako błąd. Lub wykorzystac np. bit przeniesienia – łatwo sprawdzic.

background image

Gr 4 i 1
1) Co to jest dyrektywa?
Jest symbolem rozumianym przez asembler służącym do sterowania asemblacją programu.

Nie jest tłumaczona na kod maszynowy.
2)Czym się różni makro od procedury?
Kod makra jest wklejany do programu w miejscu wywołania.
Kod procedury ulokowany jest w jednym miejscu, a podczas odwołania do procedury, jak i jej
opuszczenia, wykonywane zostają skoki bezwarunkowe w odpowiednie miejsca w kodzie –
skok i powrot w czasie wykonia programu.

Stosowanie makrodefinicji powoduje wzrost

objętości kodu wynikowego w porównaniu z procedurą. Stosowanie procedur wymaga
dodatkowego narzutu czasu pracy procesora na obsługę skoków i związanych z nimi
czynności.

3)Czy program konsolidowalny może byd nierelekowalny?

To pytanie jest chyba źle sformułowane, gdyż każdy poprawnie napisany program jest
konsolidowalny.

Może. Nie każdy program musi byd relokowalny, w szczególności wynikiem asemblacji jest
zawsze powstanie kodu maszynowego. Inne elementy, takie jak tablica symboli
relokowalnych są opcjonalne.
4)Co to jest relokowalnośd?
Możliwośd załadowania programu od dowolnego miejsca w pamięci
5)Jaka jest zależnośd asemblera i języka maszynowego?
Każda instrukcja asemblera odpowiada dokładnie jednej instrukcji kodu maszynowego.
6)Co to są moduły, które potem są konsolidowane?
Moduły to oddzielne pliki, utworzone w procesie asemblacji, powstałe z oddzielnych plików
źródłowych.

Oddzielne moduły są zwykle zbiorem logicznie pogrupowanych procedur i

funkcji. Konsolidacji programu złożonego z modułów tworzy spójny plik wynikowy.

7)Jak się tworzy program oparty na procedurach?
Stworzenie takiego programu polega na rozdzieleniu zadao na jak najmniejsze.
Dekompozycja funkcjonalna (od góry do dołu):
– zaprojektuj program przed programowaniem
– podziel duze zadania na mniejsze
– uzyj struktury hierarchicznej opartej na procedurach
– poszczególne procedury testuj oddzielnie
8)Kiedy można parametry do procedury przekazywad przez rejestr?

Przy odwoływaniu pośrednim i bezpośrednim. Gdy kod wywołania procedury uwzględnia
zapisanie potrzebnych danych z rejestru na stos.

9)Korzyści z implementacji zm. lokalnych na stosie.
Zapewnia możliwośd przekazania dużej ilości parametrów (np. przy wywoływaniu
rekurencyjnym).
10)Co zawiera tabela symboli?
Zawiera nazwy symboli i ich adresy (np. adresy etykiet)

bądź adresy w pamięci do danych

(stałych) utworzonych za pomocą odpowiednich dyrektyw.

Tablica symboli tworzona jest w

pierwszym przejściu asemblera i wykorzystywana jest w jego drugim przejściu.

Kol or zi elony - tera z czarny - wyda je mi się że jest dobrze Kolor fioletowy - może dobrze, a może źle (ja bym tak napisał na
chwi lę obecną). Kolor niebieski - i nformacje dodatkowe. Kolor czerwony – komentarze. Wprowadzone zmiany.

„Generalnie to na szybko robione, bez zaglądania do materiałów, niby pamiętam dośd, ale no nie
wiem. (…)” – Kerto.


Wyszukiwarka

Podobne podstrony:
Lachu opracowanie otwarte Kerto me edit, INNE, WYKŁADY Lach, pps na 17 czerwca
Lachu opracowanie otwarte Kerto, INNE, WYKŁADY Lach, 1 i 2 kolokwium - różne wersje, PPS
opracowanie2 id 338681 Nieznany
Opracowanie07v2 id 338680 Nieznany
chemia opracowanie id 112613 Nieznany
Opracowanie z zalacznikami Zala Nieznany (2)
ginexy opracowanie id 191652 Nieznany
Najlepsze opracowanie id 313141 Nieznany
18 Opracowanie programu i reali Nieznany (2)
Opracowanie zagadnienia trybow Nieznany
NIB opracowane zagadnienia id 3 Nieznany
02 Opracowanie i analiza materi Nieznany (2)
Promethidion Opracowanie id 40 Nieznany
!!!!OPRACOWANIE EGZAMIN!!!!id 4 Nieznany (2)
Immunologia opracowanie id 2121 Nieznany
biotech opracowanie 1 id 89010 Nieznany
Filozofia opracowanie id 170613 Nieznany

więcej podobnych podstron