You are on page 1of 4

UNIVERZITET U BIHAĆU

TEHNIČKI FAKULTET BIHAĆ


ELEKTROTEHNIKA/INFORMATIKA

ARHITEKTURA RAČUNARA
Auditorne vježbe

Zadaci u assembler jeziku


(Vježba 3)

Una Drakulić, bach.el.


Asistent

Akademska godina: 2019/2020


PRIMJER 1 Napisati program kojim se određuje da li je godina prestupna
ili ne i ispisuje odgovarajuću poruku.

Rješenje:

TRUE EQU 0FFh


FALSE EQU 0

data SEGMENT

; zadavanje godine

godina DW 1984
jeste DB 'Godina je prestupna !$'
nije DB 'Godina nije prestupna !$'

; logičke varijable

log1 DB ?
log2 DB ?
log3 DB ?

data ENDS

MOV log1 , TRUE


MOV log2 , TRUE
MOV log3 , TRUE

XOR DX , DX
MOV AX , godina
MOV BX , 4
DIV BX
CMP DX , 0

JE dalje1

MOV log1, FALSE

dalje1: MOV AX , godina


MOV BX , 100
DIV BX
CMP DX , 0

JNE dalje2

MOV log2 , FALSE

dalje2: XOR DX, DX


MOV AX , godina
MOV BX , 400
DIV BX
CMP DX , 0

JE dalje3

MOV log3 , FALSE


dalje3: MOV AL , log1
MOV BL , log2
AND AL , BL
MOV BL , log3
OR AL , BL

; ako je konačan odgovor laž (netačno, nula)

JZ ne

MOV AH , 9
LEA DX , jeste
INT 21H

JMP kraj

ne: MOV AH, 9


LEA DX , nije
INT 21H

kraj: NOP

PRIMJER 2 Modifikovati prethodni program tako da se godina može unijeti


sa tastature.

Rješenje:

;unos hiljada

MOV AH, 1
INT 21h
SUB AL, 48
MOV BX , 1000
MUL BX
ADD godina , AX

;unos stotina

MOV AH , 1
INT 21h
SUB AL , 48
MOV BL , 100
MUL BL
ADD godina , AX

;unos desetina

MOV AH , 1
INT 21h
SUB AL , 48
MOV BL , 10
MUL BL
ADD godina , AX
;unos jedinica

MOV AH , 1
INT 21h
SUB AL , 48
ADD godina , AX

You might also like