Zagadnienia i opracowanie


0. Wymień 5 instrukcji koprocesora arytmetycznego

FABS

FADD/FADDP

FSUB/FSUBP

FMUL/FMULP

FDIV/FDIVP

FIDIV/FIMUL

1. Wymień operacje arytmetyczne z przykładowymi użyciami:

ADC ax, 5

ADD ax, bx

SUB ax,bx

SBB ax,bx

MUL ax, 2

DIV ax

IDIV ax

2. Wymień operacje logiczne z przykładowymi użyciami:

NOT al

OR ax, bx

XOR ax, bx

AND ax, bx

TEST

3. Wymień operacje bitowe z przykładowymi użyciami:

SHR al,1

SHL al, 1

SAR al, 1

SAL al, 1

ROR al, 1

ROL al, 1

4. Wymień instrukcje asemblerowe, które zmieniają wskaźnik stosu (w sposób jawny i

niejawny) co najmniej 7(bez push pop):

call odkłada na stosie adres powrotu i zmienia wskaźnik stosu (niejawnie)

ret pobiera ze stosu adres powrotu i zmienia wskaźnik stosu (niejawnie)

mov (1 mov sp, 1023) pozwala dowolnie zmieniać wskaźnik stosu (jawnie)

inc (inc sp) zwiększa o jeden wskaźnik stosu (jawnie)

dec (dec sp) zmniejsz o jeden wskaźnik stosu (jawnie)

add sp, 8 zmniejsza stos o 8 bajtów (do “czyszczenia” stosu po wywołaniu funkcji z

wieloma argumentami) (jawnie)

iret to samo co ret tylko jeszcze wykonuje popf (niejawnie)

PUSH src; kładzie na stosie słowo (2B) z src (np. ax, si)
PUSHA ; odkłada na stos rejestry w kolejności ax, cx, dx, bx, sp, bp, si, di
PUSHF ; kładzie flagi na stosie (rejestr (E)Flags)
POP desc ; ściąga słowo (2B) ze stosu i przepisuje wartość do desc (np. cx)
POPA ; ściąga ze stosu rejestry ogólnego przeznaczenia: di, si, bp, sp, bx, dx, cx, ax
POPF ; zdejmuje ze stosu słowo (2B) i kopiuje do dolnych (16b) rejestru (E)Flags (przywraca flagi)

5. Wymień zadania wykonywane przez moduł Start Up:

Kod ten przygotowuje środowisko pracy, inicjalizuje stos potrzebnymi zmiennymi i ustawia wskaźnik stosu w taki sposób, żeby nie zniszczyć ważnych informacji które są na nim zapisane podczas wykonywania programu.

Ustawia obsługę dzielenia przez zero

Ustala rozmiar zmiennych środowiskowych

Zeruje niezainicjowane dane

Przygotowuje argumenty dla funkcji main

Wywołuje funkcję main przekazując jej oczekiwane parametry

6. Wymień zadania wykonywane przez moduł Exit:

- Przywrócenie oryginalnej funkcji obsługi przerwania dzielenia przez zero

- Zwrócenie wartości main do systemu

- Zamknięcie plików

Inne źródło:

- Generuje kod kończący program w MS-DOS.

- Pozwala na przekazanie kodu powrotu.

- Kod powrotu jest przekazywany przez AL.

7. Wymień funkcje jakie pełni stos:

- zabezpieczanie wartości rejestru(ów) przed zniszczeniem

- przechowywanie adresu powrotu

- przekazywanie argumentów do funkcji

- przechowywanie zmiennych lokalnych

- wymiana wartości między rejestrami (bez użycia trzeciego rejestru)

8. Dlaczego na końcu programu, gdy używa się własnych funkcji obsługi przerwań,

stosuje się funkcję setvect(); Co jest jej argumentem?

Gdy się ustawiło własne funkcje obsługi przerwań, to trzeba je pod koniec programu usunąć. setvect() podaje się wtedy adresy oryginalnych funkcji obsługi przerwań wcześniej zapamiętany.

setvect(numer_przerwania, oryginalna_funkcja_obsługu_przerwania);

9. Po co są przerwania programowe?

- Realizują funkcje BIOS'u/firmware'u

- Realizują funkcje systemu

- Są wywoływane z kodu programu w celu wywołania jakiejś pożądanej przez programistę instrukcji przerwania.

10. Co to są dyrektywy asemblera? Wymień 5 z opisem.

Są informacją dla assemblera (programu generującego kod wykonywalny) w jaki sposób program ma być tłumaczony.

.MODEL - powoduje wybranie standardowego modelu pamięci używanego przez program.
ASSUME - przypisuje etykietę do wskazanego rejestru segmentowego
SEGMENT,ENDS - służą do deklaracji segmentów
GROUP- grupuje kilka segmentów
LABEL - tworzy etykiety przyporządkowując im aktualną wartość adresu

11. Jakie są zasadnicze różnice w treści asemblerowej funkcji obsługi przerwań

sprzętowych od zwykłej funkcji?

Funkcje obsługi przerwań sprzętowych wykonują się gdy nadejdzie przerwanie sprzętowe

często przerywając działanie programu użytkownika. (To nie są przerwania BIOSu/DOSu!!)

- Nie przyjmują argumentów

- Nie zwracają argumentów

- Kończą się instrukcją IRET

- Przed rozpoczęciem pracy powinny zachować stan rejestrów na stosie, a po jej

wykonaniu, zachowany stan przywrócić

12. W jakim celu programista używa następujących instrukcji:

- or ax, ax ustawia flagi, Z jeżeli w AX jest 0, S w zależności czy liczba jest dodatnia/ujemna

- xor ax, ax zeruje zmienną ax

- xchng ax,ax odpowiednik funkcji NOP(pustej); zamienia zawartość ax z ax

- cbw - konwertuje bajt z rejestru al na słowo w rejestrze ax

- call wykonuje wywołanie funkcji

- wait oczekiwanie, aż FPU skończy pracę

- enter rezerwuje pamięć na stosie

- leave Zwalnia pamięć zarezerwowaną na stosie dla zmiennych lokalnych utworzoną przez ostatnią instrukcję ENTER

13. W jaki sposób (gdzie) funkcje języka C zwracają wartości typu:
char do al bo 1bajt
int do ax bo 2bajty
long do eax bo 4bajty
char* (w modelu small) ax(2bajty) a dla large eax(4bajty)

14. Co musi zrobić programista asemblera by wywołać przerwanie programowe.

- Trzeba uzupełnić argumenty przerwania w odpowiednich rejestrach

- INT <numer przerwania>, gdzie numer przerwania to liczba 0255

np. INT 10h

15. Cechy programu z rozszerzeniem .COM?

- składa się tylko z 1 segmentu

- rozmiar max. 64kb (kod+dane)

- Wykonywany od instrukcji 100H

- cały kod bezpośrednio ładowany do pamięci operacyjnej

Makro to stała symboliczna przydzielana pewnemu ciągowi instrukcji. Po zdefiniowaniu makro może być użyte dowolną liczbę razy, a jedno wywołanie powoduje wstawienie do kodu programu instrukcji zawartych w makrze.

+ 2 stosy



Wyszukiwarka

Podobne podstrony:
Zagadnienia Kryminologia - Zagadnienia z opracowaniem, Sudia - Bezpieczeństwo Wewnętrzne, Semestr II
temp krytyczna, TRANSPORT PWR, STUDIA, SEMESTR II, FIZYKA, fizyka-wyklad, zagadnienia opracowane, za
zagadnienia opracowane przeze mnie
gramatyka opisowa zagadnienia opracowane (morfologia, fleksja, składnia)(1)
Zagadnieniaa opracowane
zagadnienia opracowane na kolokwium nr3 (marynaty, soki)
zagadnienia opracowane panstwo
Fleksja zagadnienia, opracowania, pomoc 2
I kolokiwum zagadnienia opracowane
NEUROFIZJOLOGIA ćw. 1 - zagadnienia opracowane, Dietetyka CM UMK, Fizjologia
zagadnienia opracowywane, Praca socjalna UMK, andragogika
Tob zagadnienia opracowane, AGH Imir materiały mix, Studia
polityka społ zagadnienia - opracowanie, Dokumenty- PRACA SOCJALNA, Polityka Społeczna
zagadnienia opracowane ZP-1, Zamówienia publiczne UEK
ZAGADNIEnia Opracowane
3 zagadnienia opracowanie Patki
zagadnieniaOPC opracowane1
Podstawy Zarządzania - zagadnienia opracowane1, II semestr kulturoznawstwa
Zagadnienia opracowanie
PMP prawo międzynarodowe publiczne skrypt zagadnienia opracowane

więcej podobnych podstron