PROGRAMA EN MASM

Páginas: 3 (516 palabras) Publicado: 3 de marzo de 2015
PROGRAMA EN MASM
l siguiente código compila con masm. Te servirá para imprimir enteros de 2 cifras. Espero que te sea de ayuda: 

.model small 
.stack 
.data 
var1 db ? 
.code 
.startup 
mov ah,01h;leer caracter desde el teclado 
int 21h ;lee primer caracter 

sub al,30h ;resto 30H (48Dec) para obtener el numero 
mov var1,al ;lo guardo en variable var1 

mov ah,01h ;leer caracter desde elteclado 
int 21h ;leo el segundo caracter 
sub al,30h ;resto 30H (48Dec) para obtener segundo valor 
add al,var1 ;realizo la suma de los dos valores 

;AQUI EMPIEZO YO: 
xor ah, ah ;Pongo el byte de mayorpeso a cero. 
mov bh, 10 ;Voy a dividir entre 10. 
div bh 
mov bh, ah ;Guardo el resto de la division. 



cmp al, 0 ;Si el resultado es cero, estamos ante un numero de una sola cifra. 
je segund ;Porlo tanto, no imprimo la primera ya que es un cero. 

mov dl,al ;pongo en dl el numero a imprimir 
add dl,30h ; agrego 30 (48Dec) para obtener el caracter 
mov ah,02h ;funcion para imprimir uncaracter en pantalla 
int 21h 

;Imprimo el resto de la division: 
segund: 
mov dl, bh 
add dl, 30h 
mov ah, 02h 
int 21h 


.exit 
end

MULTIPLICA EMU



CICLO2: CMP AL, 99 ;compara AL con 99
JG SIGUE2;si es mayor que 99 se va a la etiqueta SIGUE2

AAM
MOV U, AL
MOV D, AH
MOV AH, 02H
MOV DL, D
ADD DL, 30H
INT 21HMOV DL, D
ADD DL, 30H
INT 21H
JMP ALLA

SIGUE2: AAM
MOV U, AL
MOV AL, AH
AAM
MOV C,AH
MOV D,AL
MOV AH, 02hMOV DL , C
ADD DL, 30H
INT 21H
MOV DL, D
ADD DL, 30H
INT 21H
MOV DL, U
ADD DL, 30H
INT 21H

ALLA: MOV AH,07H
INT 21HRET


Ordenación ascendente descendente.

INCLUDE “EMU8086”
.MODEL SMALL
DATA SEGMENT
N DW Oah
Indec dw ?
Vect dw -90d, -89d, 0728d, 0old, 04d,07d,0d,010d
Ends
Code segment
Call start
Int 20 h...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • masm
  • masm
  • Masmas
  • Informe masma
  • Villa Masma
  • reporte de MASM
  • INSTRUCCIONES DEL MASM
  • masma,

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS