Professional Documents
Culture Documents
Lab 01 A
Lab 01 A
Priprema za vjebu
1. Predstaviti date podatke u traenom obliku:
Nepakovani BCD:
12;
426;
Pakovani BCD:
12;
426;
Cjelobrojni tipa BYTE:
12h; 01011100b; -78;
Cjelobrojni tipa WORD:
12h; 426; -7;
1234h;
Cjelobrojni tipa DWORD:
12h; 426; -7;
12345678h;
Cjelobrojni tipa QWORD:
12h; 426; -7;
123456789ABCDEFh;
Realni u jednostrukoj preciznosti:
1.0;
-1.0; 123.5; 5.5E5;
Realni u dvostrukoj preciznosti:
1.0;
-1.0; 123.5; 5.5E5;
2. Napisati asemblerski program u kome se definiu promjenljive iz take 1.
Rad u laboratoriji
1. Napisati jednostavan asemblerski program u kome se definiu promjenljive iz take 1 i smjestiti
ga u datoteku pod nazivom lab11.asm. Za pisanje programa iskoristiti bilo koji Linux editor teksta
(Kate, gedit, vim,...). Preporuuje se editor koji ima mogunost prepoznavanja asemblerske
sintakse. Iskoristiti sljedei okvir:
section .data
; definicije promjenljivih
section .text
global _start
_start:
mov rax, 60
mov rdi, 0
syscall
2. Napisati jednostavan makefile koji e omoguiti prevoenje kreiranog programa:
lab11: lab11.o
ld -o lab11 lab11.o
lab11.o: lab11.asm
nasm -f elf64 -g -F dwarf lab11.asm
5. Nai memorijsku lokaciju na kojoj su deklarisane promjenljive (ako je potrebno, dodati instrukciju
mov rax,nbcd1, pa iz sadraja registra RAX nai adresu promjenljive).
6. Uporediti razliite prikaze sadraja memorije i registara (odabrati razliite duine memorijskih
blokova i naine interpretacije podataka iz padajueg menija koji se dobije desnim klikom na
prikaz sadraja memorije i registara.