Pytania na kolokwium + odpowiedzi

Nasza ocena:

4
Pobrań: 42
Wyświetleń: 756
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Pytania na kolokwium + odpowiedzi - strona 1

Fragment notatki:


MS Co to jest instrukcja a co dyrektywa asemblera? * Instrukcja jest to część kodu tłumaczona na kod operacyjny, a dyrektywy określają pomocnicze czynności wykonywane przez asembler. Jakie jest działanie dyrektywy org p:$200? * dyrektywa mówi kompilatorowi, że dany blok programu będzie po uruchomieniu znajdował się w pamięci programu-RAM pod adresem początkowym HEX $200 Jaka jest różnica pomiędzy org p:$200 i org P:200? * jw., ale adres jest inny. $200 to zapis heksadecymalny, a 200 to dziesiętny. Co to jest etykieta? * etykieta to oznaczenie przed instrukcją, pozwalające na odniesienie się do danego miejsca w programie przez zdefiniowaną nazwę. W skrócie, tworzy to alias labeladress in LC (location counter) Gdzie w programie powinna znaleźć się etykieta a gdzie instrukcja? * Nie do końca rozumiem o co chodzi w sensie programu, ale w sensie linii kodu najpierw etykieta, potem biały znak, a następnie instrukcja z argumentami a na końcu ;komentarz Co robi dyrektywa equ? * Pozwala zdefiniować stałą. Nie może być potem zmieniona. Equal - przypisuje symbolowi alfanumerycznemu wartość liczbową - tworzy alias jak #define w C Co robi dyrektywa section? * Wydziela ona część w kodzie źródłowym, w obrębie której możemy używać nazwy symboli niezależnie od tych użytych w pozostałej części programu. Pomaga również na łatwiejsze przenoszenie części kodu, oraz relokowanie danych w pamięci procesora. Co robi dyrektywa ds? * Define storage definiuje pamięć danych bez inicjowania jej zawartości: pod aliasem jest pusty obszar pamieci o długości równej drugiemu argumentowi TABLE ds $10 - pod TABLE jest adres początku pustego obszaru o długości 16bit Co robi dyrektywa dc? * Define constant - definiuje pamięć danych z inicjacją zawartości - np TABLE dc $111,111,'TEXT' Co zawarte jest pliku z rozszerzeniem ctl - jaka jest jego funkcja - czy jest konieczny? * * Plik *.ctl zawiera informacje wykorzystywane przez linker przy łączeniu plików projektu programu, np odnośnie rezerwacji pamięci. Zawiera informacje na temat w którym miejscu w pamięci mają się znaleźć poszczególne fragmenty kodu. Jest konieczny. Co zawiera plik z rozszerzeniem map - kiedy się tworzy? * * Zawiera wszystkie nazwy symboliczne (czyli te zmienne które używamy - np. “x_test_data”) wraz z ich adresami. Czyli można sobie tam sprawdzić, które obszary pamięci przeznaczone są na te nasze dane. Co zawiera plik z rozszerzeniem lst - kiedy się tworzy? * *

(…)

…? * *
Nieduża, symulator to maszyna wirtualna, a debugger to monitor stanu i sterownik wykonania programu na układzie. Na moje oko rzecz jasna, bo pytanie nie jest jasne.
Co to są punkty kontrolne (ang. Breakpoints)? * *
Są to punkty ustawiane przez użytkownika w których wykonanie programu zostanie zatrzymane do ponownego wznowienia przez użytkownika :).
Co to jest akumulator? *
Akumulator to rejestr 56bitowy…
…. Po drugie zakładając że były by kompletne to: pierwsza przeniesie wartość z pamięci x o adresie (r1+n1). Natomiast druga przeniesie wartość z pamięci x o adresie r1, a później zwiększy wartość w r1 o n1.
Na czym polega podobieństwo użycia rejestrów adresowych i wskaźników w „C”? * *
z Wiki:
Rejestry procesora to komórka pamięci o niewielkich rozmiarach (najczęściej 4/8/16/32/64/128 bitów) umieszczone…
….
// to mi na razie przyszło do głowy - Stanki
Nie do końca, to nie odpowiada na pytanie. Rejestr adresowy zawiera w sobie wartość adresu konkretnego miejsca w pamięci. Wskaźnik w C działa tak samo: podajesz mu adres miejsca w pamięci np void * ptr = &zmienna;. W związku z tym wskaźnik przechowuje adres pamięci, dokładnie jak rejestr Rx. //waco
Jak zadeklarować „odpowiednik wskaźnika” w asemblerze, jak go używać…
… przez rejestr adresowy Rn. Przykład:
move a0, x:(r0) ; kopiuje wartość z a0 do komórki pamięci w bloku x o adresie r0 (tuaj bez modyfikacji r0)
move b1 y:(r3)+ ; kopiuje wartość z b1 do bloku pamięci y o adresie z rejestru r3 a następnie zwiększa wartość r3 (analogicznie zamiast (r3)+ (postinkrementacja) może być (r3)- (postdekrementacja)
Krótkie adresowanie WE/WY- przykład krótkiego programu i objaśnienia…
... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz