06.04.2015 Views

Osnovi programiranja i programski jezici

Osnovi programiranja i programski jezici

Osnovi programiranja i programski jezici

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Listing programa je:<br />

;********************************************************************<br />

Prog07 Segment ;definicija segmenta<br />

assume CS:Prog07,DS:Prog07 ;pocetak CS i DS segmenta<br />

;********************************************************************<br />

Start:mov ax,Prog07 ;pocetak na DS<br />

mov ds,ax<br />

;********************************************************************<br />

mov ax,0b800h ;adresa video memorije u<br />

mov es,ax ;es registar<br />

;********************************************************************<br />

mov ax,3 ;brisanje ekrana<br />

int 10h<br />

;********************************************************************<br />

call write1 ;meni na ekran<br />

lab1: call line ;zelena traka u pozadini prvog reda<br />

;********************************************************************<br />

lab2: mov ax,0100h ;taster?<br />

int 16h<br />

;********************************************************************<br />

jz lab2 ;ne, cekati<br />

;********************************************************************<br />

mov ax,0 ;da<br />

int 16h<br />

cmp ah,1ch ;ENTER?<br />

jz ent ;da, nastaviti tamo<br />

;********************************************************************<br />

cmp ah,48h ;^? (gore?)<br />

jnz lab3 ;ne, proveriti sta je<br />

;********************************************************************<br />

cmp byte ptr [POINTER],1 ;POINTER = 1 ?,<br />

jz lab2<br />

;********************************************************************<br />

dec byte ptr [POINTER] ;POINTER - 1<br />

jmp lab1 ;cekati opet na taster<br />

;********************************************************************<br />

lab3: cmp ah,50h ;dole ?<br />

jnz lab2 ;ne, taster<br />

;********************************************************************<br />

cmp byte ptr [POINTER],5 ;POINTER jos ne pokazuje na<br />

jz lab2 ;5. poziciju, inkrementirati<br />

;********************************************************************<br />

inc byte ptr [POINTER]<br />

jmp lab1 ;taster<br />

;********************************************************************<br />

ent: mov cl,byte ptr [POINTER] ;u cl vrednost POINTER-a<br />

mov si,offset ADDRESS ;u bs adresa<br />

;********************************************************************<br />

ent1: mov bx,[si]<br />

add si,2<br />

loop ent1<br />

jmp bx ;skok na osnovu bx registara<br />

;********************************************************************<br />

ent2: mov si,offset QUEST ;pitanje na ekran<br />

call write2<br />

;********************************************************************<br />

ent3: mov ax,0100h ;da? ne?<br />

int 16h<br />

jz ent3<br />

93

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!