Calculadora linguagem assembly

Disponível somente no TrabalhosFeitos
  • Páginas : 2 (266 palavras )
  • Download(s) : 0
  • Publicado : 25 de novembro de 2012
Ler documento completo
Amostra do texto
TITLE Calc
.MODEL SMALL
.STACK 100h
.DATA
CR EQU 0Dh
LF EQU 0Ah
MSG1 DB 'ENTRE COM UM NUMERO CUJA A SOMA ,A SUBTRAÇAO ,A DIVISAO E AMULIPLICACAO ESTA ENTRE 0 E 9:$'
MSG2 DB CR,LF,'A soma eh:'
SOMA  DB ?,'$'    
MSG3 DB CR,LF,'A subitracao eh:'
SUBI  DB ?,'$'
MSG4 DBCR,LF,'A divisao eh:'
DIVI  DB ?,'$'
MSG5 DB CR,LF,'A multipicacao eh:'
MULT DB ?,'$'
.CODE
;inicializando DOs e imprimindomsg        
MOV AX,@DATA
MOV DS,AX
LEA DX,MSG1
MOV AH,9h
INT 21h
MOV AH,1 ;primeira variavel
INT 21h       
SUB AL,30h ;transforma em tabela asc;tirando primeira variavel de al
MOV SOMA,AL
MOV SUBI,AL
MOV DIVI,AL
MOV MULT,AL
MOV AH,1h ;segunda variavel
INT 21h
SUB AL,30h;transforma em tabela asc
MOV BL,AL
ADD SOMA,BL ;somando primeira variavel com a segunda variavel
ADD SOMA,30h
MOV AH,2h
MOV DL,SOMA      LEA DX,MSG2
MOV AH,9h
INT 21h
SUB SUBI,BL ;subtraindo primeira variavel pela segunda variavel
ADD SUBI,30h
MOV AH,2h
MOV DL,SUBI
LEADX,MSG3
MOV AH,9h
INT 21h
MOV AL,DIVI ;dividindo primeira variavel pela segunda variavel
MOV AH,0
DIV BL
ADD AL,30h
MOV DIVI,AL
MOVAH,2h
MOV DL,DIVI
LEA DX,MSG4
MOV AH,9h
INT 21h
       
MOV AL,BL ;multiplicando primeira variavel com a segunda variavel
MUL MULTADD AL,30h 
MOV MULT,AL    
MOV AH,2h
MOV DL,MULT
LEA DX,MSG5
MOV AH,9h
INT 21h
;retorna ao dos
MOV AH,4Ch
INT 21h
END
tracking img