Está en la página 1de 8

Laboratorul 4, problema 5:

Scrieti un program care: inmulteste doua valori positive pe 8 biti (ex. val1=2, val2= ! inmulteste doua valori positive pe 1" biti (ex. #al2=2$2$, val2=%! imparte doua valori positive pe 8 biti (ex. val1=2, val2= ! imparte doua valori positive pe 1" biti (ex. #al2=2$2$, val2=%! .&'()L small .S*+,- 1../ .(+*+ a db 2 b db c d0 2$2$ d d0 % .,'() S*+1*: mov ax,2data mov ds,ax mov a/,. mov b/,. mov al,a mov bl,b mul bl mov ax,c mov bx,d mul bx mov al,b mov a/,. mov bl,a div bl mov ax,c mov dx,. mov bx,d div bx mov a/,4c/ int 21/ )3( S*+1*

Laboratorul 4, problema ":


Scrieti un program care : &emorea4a in registrul +5 re4ultatul lui +3( logic pentru doua variabile pe 1" biti (a=$2$2, b=1822! &emorea4a in registrul 65 re4ultatul lui '1 logic pentru doua variabile pe 1" biti (a=$2$2, b= 1822! &emorea4a in registrul ,5 re4ultatul lui 5'1 logic pentru doua variabile pe 1" biti (a=$2$2, b= 822! .&'()L small .S*+,- 1../ .(+*+ a d0 $2$2 b d0 1822 .,'() S*+1*: mov ax,2data mov ds,ax mov ax,a mov bx,b and ax,bx mov ax,a mov bx,b or bx,ax mov cx,a mov bx,b xor cx,bx mov a/,4c/ int 21/ )3( S*+1*

Laboratorul 4, problema%:
Scrieti un program care evaluea4a expresiile : (,5:65!= +768,7( si ((5:+5!=+769,7( , unde +,6,, si ( sunt numere intregi :ara semn pe 1" biti. .&'()L small .S*+,- 1../ .(+*+ a d0 25 b d0 11 c d0 " d d0 88 .,'() Start: mov ax,2data mov ds,ax mov ax,a mul b mov bx,ax mov cx,dx mov ax,c mul d add bx,ax adc cx,dx mov cx,dx mov bx,ax mov ax,a mul b sub dx,cx sbb ax,bx mov a/,4c/ int 21/ )3( Start

Laboratorul 5, problema 5:
Sa se numere cate spatii libere sunt intr9un sir de caractere. .&'()L S&+LL .S*+,- 1./ .(+*+ sir (6 ;+cest program calculea4a numarul de spatii din l )=> ?9sir .,'() begin: mov ax,2(+*+ mov ds,ax mov cx,l mov si,91 mov al,; ; urm: inc si cmp al,sir@siA Bne neCgasit gasit: inc bx neCgasit: loop urm mov a/,4c/ int 21/ )3( begin

interiorul unei :ra4e<;

Laborator 5, problema ":


Sa se reali4e4e suma primelor 3 numere naturale pe 8 biti, unde 3 este un numar citit de la tastatura (3D1.!. 1e4ultatul se va memora in registrul (5. .&'()L small .S*+,- 1../ .(+*+ n (6 E m1 (6 1$,1.,;3=;,;?; .,'() Start: mov ax,2data mov ds,ax mov dx, o::set m1 mov a/,. / int 21/ mov a/, .1/ int 21/ sub al,48 mov bl,al mov b/, . xor dx, dx xor ax, ax 20/ile : inc dx add ax, dx cmp dx, bx Bne 20/ile mov dx, ax mov a/,4c/ int 21/ )3( Start

Laborator 5, problema %:
Sa se citeasca doua numere de la tastatura. (aca primul este mai mic decat al doilea, in registrul ,5 se va memora produsul lor, alt:el, in registrul ,5 se va memora catul impartiri celor doua numere. *F*L) pb% .&'()L small .S*+,- 1../ .(+*+ a db E b db E m1 (6 1$,1.,;a= ;,;?; m2 (6 1$,1.,;b= ;,;?; .,'() start: mov ax,2data mov ds,ax mov dx, o::set m1 mov a/,. / int 21/ mov a/, .1/ int 21/ sub al,48 mov a,al mov dx, o::set m2 mov a/, / int 21/ mov a/, .1/ int 21/ sub al,48 mov b,al mov al,a cmp al,b Bb mic

xor a/, a/ mov al,a div b xor a/, a/ mov cx,ax Bmp sari mic: mov al,a mul b mov cx,ax sari: mov a/,4c/ int 21/ )3( start

También podría gustarte