Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2. Potencia:
name "potencia" ;8 chars DOS
org 100h ;counter to 100h
mov cx, num2
mov ax, num1
inicio:
mov bx,num1
mul bx ;ax = ax * bx
loop inicio ;c-mov num3,ax ;copiamos el resultado
ret
;Variables "db" para byte y "dw" para word
num1 dw 0Ah
num2 dw 03h
num3 dw 0h
3. Raiz cuadrada:
org 100h
siguiente:
inc r
mov ax, r
mul ax
cmp ax, m
jbe siguiente ;(r*r) MENOR O IGUAL a m
dec r
ret
;Variables
m dw 146
r dw 0 ;Al final debe ser r=sqrt(m).
4. Arreglos:
name "arreglo"
org 100h
;un areglo se puede acceder a travez de []
mov cx, 9 ;cuantos elementos voy a recorrer, empezamos con el 9
inicio:
mov si, cx
mov dl, v[si]
cmp dl, mayor
jng siguiente:
mov mayor,dl
siguiente:
loop inicio
ret
v db 1,32,64,32,98,12,5,21,91,38
mayor db 0
6. Multiplicacion:
ORG
MOV
MOV
MUL
100h
AL, 200 ; AL = 0C8h
BL, 4
BL ; AX = 0320h (800)
RET
tecla
ah, 7 ;NO imprime un simbolo a la consola
dl, tecla ;
21h ;Llamada al DOS
ret
;Variables
tecla db 0
simbolo db 45H
;ah que queres hacer
;ah = 1 guarda caracter en al
;ah = 2 escribe un caracter en la consola. El ascii del cacacter a
imprimir se pone el dl
;AH = 7 es igual a el ah=2 pero el resultado no se ve en pantalla
;ah = 9 imprime una cadena en la consola. Considera el caracter $ como
fin de cadena.
;La direccion de la cadena se expresa en DX
8. Cadenas:
org
mov
mov
mov
int
ret
msg
100h
msg[2], 34H
dx, offset msg
ah, 9
21h
db "hello world $"
9. Cambiar a maysculas:
name "int02"
ORG 100H
lectura:
mov ah,7
int 21h
mov tecla, al
cmp al,13
jz fin:
cmp tecla, 122 ;si tecla es mayor a 122 entonces ir a fin3 (tecla >
122)
ja fin3
cmp tecla,96 ;si tecla no es mayor a 96 ir a fin3 (tecla <= 96)
jng fin3
sub tecla, 32 ;si es 'a' hasta 'z' entonces restarle 32
fin3:
mov ah,2
mov dl,tecla
int 21h
jmp lectura
fin:
ret
tecla db 0