viernes, 4 de junio de 2010

Digitales III – Prof. Tinoco – 1ª Evaluacion

Este programa toma un numero colocado en una posicion de memoria y lo muestra como binario en la memoria.

   1:                  .model small


   2:                  .stack 64h


   3:                  .data


   4:  datos           db 99h,0,0,0,0 dup (?)


   5:  base            db 10


   6:  numero          db ?


   7:  resultado    db 8 dup (0)


   8:   


   9:                  .code


  10:                  mov ax,@data


  11:                  mov ds,ax


  12:                  mov es,ax


  13:   


  14:                  lea si,datos


  15:                  mov dl,al


  16:   


  17:                  mov al,[si+1]


  18:                  and al,11110000b


  19:                  rol al,4


  20:                  mul dl


  21:                  mov numero,al


  22:                  xor ax,ax


  23:                  mov al,[si+1]


  24:                  and al,00001111b


  25:                  add numero,al


  26:                  lea si,numero


  27:          lea di,resultado


  28:  binario:        mov al,[si]


  29:                  rcl al,1


  30:                  jnc aaa15


  31:                  mov byte ptr [di],1


  32:  aaa15:         rcl al,1


  33:                  jnc aaa16


  34:                  mov byte ptr [di+1],1


  35:  aaa16:         rcl al,1


  36:                  jnc aaa17


  37:                  mov byte ptr [di+2],1


  38:  aaa17:         rcl al,1


  39:                  jnc aaa18


  40:                  mov byte ptr [di+3],1


  41:  aaa18:         rcl al,1


  42:                  jnc aaa19


  43:                  mov byte ptr [di+4],1


  44:  aaa19:         rcl al,1


  45:                  jnc aaa20


  46:                  mov byte ptr [di+5],1


  47:  aaa20:         rcl al,1


  48:                  jnc aaa21


  49:                  mov byte ptr [di+6],1


  50:  aaa21:         rcl al,1


  51:                  jnc aaa22


  52:                  mov byte ptr [di+7],1


  53:  aaa22:         .exit(0)


  54:   


  55:                  end


No hay comentarios:

Publicar un comentario