Kako dobiti unos u asemblerskom jeziku koristeći 8086 mikroprocesor za zbrajanje?
; 8086 program na asemblerskom jeziku za zbrajanje dva broja
; Definirajte segment u kojem će se kôd izvršiti
.MODEL MALI
; Definirajte veličinu segmenta hrpe
.STOG 100H
; Definirajte segment podataka gdje su pohranjene varijable
.PODACI
; Definirajte ulazno/izlazne portove
INPORT EQU 68H
IZLAZNI EQU 6CH
; Definirajte ulazno/izlazni međuspremnik
INPUT_BUF DB 10 DUP('$')
; Definirajte izlazni međuspremnik
OUTPUT_BUF DB 11 DUP('$')
; Definirajte znakove za povratak na novi red i znakove za novi redak
CRLF DB 0DH, 0AH, '$'
; Definirajte poruku koja će se prikazati
MSG DB 'Unesite dva broja:', '$'
; Definirajte segment u kojem će se kôd izvršiti
.KODIRATI
; Definirajte glavni postupak
GLAVNI PROC
; Prikažite poruku na ekranu
MOV AH, 9; Prikaz niza
LEA DX, MSG; Adresa poruke
INT 21H; Nazovite DOS servis
; Dobijte prvi broj od korisnika
MOV AH, 1; Dobiti karakter
INT 21H; Nazovite DOS servis
MOV AL, AH; Pohranite lik u AL
SUB AL, 30H; Pretvorite ASCII kod u broj
MOV BL, AL; Pohranite prvi broj u BL
; Dobijte drugi broj od korisnika
MOV AH, 1; Dobiti karakter
INT 21H; Nazovite DOS servis
MOV AL, AH; Pohranite lik u AL
SUB AL, 30H; Pretvorite ASCII kod u broj
MOV BH, AL; Drugi broj pohraniti u BH
; Zbrojite dva broja
DODAJ BL, BH; Zbrojite dva broja
MOV AL, BL; Pohranite rezultat u AL
; Prikaz rezultata na ekranu
MOV AH, 2; Napiši znak
MOV DL, AL; Pohranite rezultat u DL
INT 21H; Nazovite DOS servis
; Prikaz znakova za povratak na novi red i znakove za novi redak
MOV AH, 9; Prikaz niza
LEA DX, CRLF; Adresa znakova za povratak na novi red i znakova za novi redak
INT 21H; Nazovite DOS servis
; Izađite iz programa
MOV AH, 4CH; Izlaz iz programa
INT 21H; Nazovite DOS servis
; Kraj glavnog postupka
GLAVNI ENDP
; Kraj programa
KRAJ GLAVNOG
```