Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;=======================================================================================;
- ; ;
- ; Plik : arch1-6e.asm ;
- ; Format : EXE ;
- ; Cwiczenie : Kompilacja, konsolidacja i debugowanie program�w ;
- ; asemblerowych ;
- ; Autorzy : Julia Marcinkowska, Aleksandra Wnuk, grupa 3, poniedzia�ek, 14:15 ;
- ; Data zaliczenia: 19.03.2018 ;
- ; Uwagi : Program obliczajacy wzor: d/(b-c)*(a+b) ;
- ; ;
- ;=======================================================================================;
- .MODEL SMALL ;dwa segmenty (jeden na CS, jeden na DS+SS)
- Dane SEGMENT ;poczatek segmentu danych
- a DB 20
- b DB 10
- c DB 3
- d DB 3
- Wynik DB ? ;zmienna wynik
- Reszta DB ? ;zmienna reszta
- Dane ENDS ;koniec segmentu danych
- Kod SEGMENT ;poczatek segmentu kodu
- ASSUME CS:Kod, DS:Dane, SS:Stosik ;informuje kompilator, z kt�rego rejestru segmentowego ma korzystac przy odwolaniach do etykiety
- Start:
- mov ax, Dane ;przeniesienie danych do rejestru og�lnego
- mov ds, ax ;przeniesienie danych z rejestru og�lnego do segmentowego
- mov AL, a ;przeniesienie danych a do rejestru al
- add AL, b ;dodanie b do rejestru al
- mul d ;mnozenie rejestru al razy d
- mov BL, b ;przeniesienie danych do rejestru bl
- sub BL, c ;odjecie danej c od rejestru bl
- div BL ;podzielenie rejestru al przez rejestr bl
- mov Wynik, AL ;przeniesienie rejestru al do zmiennej wynik
- mov Reszta, AH
- mov ax, 4C00h ;funkcja zakanczajaca program
- int 21h ;wywolanie funkcji
- Kod ENDS ;koniec segmentu kodu
- Stosik SEGMENT STACK ;poczatek segmentu stosu
- DB 100h DUP (?) ;alokacja pamieci na stos o 100 miejscach o nieokreslonej wielkosci
- Stosik ENDS ;koniec segmentu stosu
- END Start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement