CW 05 B 8086 2 fsyst

background image

AK

Ćw. 5

Programowanie procesora 8086 z wykorzystaniem funkcji systemowych

Cel ćwiczenia: Poznanie DOS API

Literatura: E. Wróbel, „Asembler – praktyczny kurs”, Helion, 2004, G. Michałek, „Asembler nie tylko dla orłów”,

Intersoftland 1997, Bułhak L., Goczyński R., Tuszyński M., DOS od środka. Help, Warszawa, 1992.

Sprzęt i oprogramowanie: Komputer PC, program AFD (wersja 1 lub 2), asembler NASM

Pomoce: Tabela rozkazów x86 – plik Intel8086CodeTable.pdf

Zagadnienia:

Operacje na stosie

Przerwania programowe

DOS API

Wybrane rozkazy x86

1.

Napisz program, który:

zapisuje na stosie zawartość rejestrów AX, BX, CX i DX,

zmienia zawartość tych rejestrów,

odtwarza poprzednią zawartość rejestrów

Przy wykonywaniu programu zwróć uwagę jak zmienia się wskaźnik stosu

2.

Napisz podprogram, który mnoży 2 liczby 16 bitowe. Argumenty przekazywane są w rejestrach AX i BX, a wynik

zwracany w CX.

Do następnych zadań potrzebny jest drugi ekran. Włączamy go wpisując w programie AFD:

mo a on

Przełączanie miedzy ekranami klawiszem F6.

3.

Napisz program wyświetlający na ekranie twoje inicjały. Wykorzystaj funkcję 02 przerwania 21.

(Funkcja 02 - wysłanie znaku na ekran -AH=02, DL – kod znaku do wysłania.)

4.

Napisz program, który wyświetla na ekranie Twoje imię. Wykorzystaj funkcję 09 przerwania 21.

(Funkcja 09 - wyświetlenie na ekranie łańcucha znaków (tekstu) AH=09,

DS.:DX – adres początku łańcucha, łańcuch kończy się znakiem $)

5.

Napisz program, który wczytuje z klawiatury ciąg znaków aż do znaku *, a następnie wyświetla je w odwrotnej

kolejności. Wykorzystaj funkcje 01 i 02 przerwania 21.

(Funkcja 01 - odczytanie znaku z klawiatury i wysłanie echa na ekran –

AH=01, wyjście AL. – odebrany znak.

Uwaga: Napisz programy 3, 4 i 5 korzystając z edytora Notatnik następnie dokonaj asemblacji

przy użyciu programu NASM

( np. program w pliku p3.asm, program wynikowy w p3.com, wydruk w p3_list.txt:

nasm –f bin p3.asm -o p3.com –l p3_list.txt

Przykładowy program w języku asembler (Dyrektywa org 100h jest obowiązkowa, dwa ostatnie wiersze to

standardowe zakończenie programu)

Czyszczenie ekranu

org 100h
mov ah,02

mov dl,'K'

int 21h ;

mov ax,4c00h

int 21h


mov ah,0
mov al,03
int 10H





Wyszukiwarka

Podobne podstrony:
MD cw 05
podst fin ćw " 05 2010
Cw 05 Pomiar punktu Curie ferro Nieznany
cw 05 instrukcja id 121376 Nieznany
Cw 05 Rezonans w obwodzie szeregowym
ćw.5, 05 Gorski, Politechnika Krakowska
17) TSiP Cw 05 notatki
Ćw 05 szablon 2
Cw 05 Tranzystor JFET
cw 05 formularz id 121375 Nieznany
MPiS cw 05 dwie zmienne losowe
cw 05 A zalacznik
Ćwiczenia PProg cw 05
Cw 05 Met najszybszego spadku
cw 05 12
Ćw 4 8.05.2008, studia, Dermatologia
Cw 05

więcej podobnych podstron