• Viernes 19 de Abril de 2024, 19:22

Autor Tema:  lenguaje ensamblador 8086 !!!  (Leído 1650 veces)

benedyt

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
lenguaje ensamblador 8086 !!!
« en: Domingo 30 de Mayo de 2010, 22:44 »
0
tengo un problea cn el 8086, intento hacer que en modo grafico me aparezca la letra 'A', pero me sale la 'H'. alguna ayuda!!!!

aqui os dejo lo que tengo hecho:
Código: ASM
  1.  
  2. .MODEL SMALL
  3.  
  4. .STACK 100h
  5.  
  6. .DATA
  7. pixfila_a dw 80
  8. pixcol_a dw 140
  9.  
  10. .CODE
  11.  
  12. macro_letra_a MACRO pixf,pixc
  13. local pinta1a,pinta2a,pinta3a,pinta4a
  14. MOV DL, 0
  15. MOV DH,0
  16. MOV ax,pixf
  17. MOV bx,320
  18. MUL bx
  19. ADD ax,pixc
  20. MOV DI,ax
  21. MOV AL,15
  22.  
  23. MOV cx, DI
  24. ADD cx, 30
  25.                ; A partir de aki se empieza a escribir las lineas de la 'a', 2 horizontales y 2 verticales ( pinta1h, pinta2h,pinta3h,pinta4h ), pero solo me salen las 2 verticales y una horizontal (la de abajo).
  26. pinta1h:
  27. MOV ES:[DI], AL
  28. ADD DI, 320
  29. INC DL
  30. CMP DL, 30
  31. jbe pinta1h
  32.  
  33. MOV ax,320
  34. MOV bx,10
  35. MUL bx
  36. SUB DI,ax
  37.  
  38. MOV AL,15
  39.  
  40. pinta2h:
  41. MOV ES:[DI], AL
  42. INC DI
  43. INC DH
  44. CMP DH, 30
  45. jbe pinta2h
  46.  
  47. MOV DL, 0
  48. MOV DI,cx
  49.  
  50. pinta3h:
  51. MOV ES:[DI], AL
  52. ADD DI, 320
  53. INC DL
  54. CMP DL, 30
  55. jbe pinta3h
  56.  
  57. MOV DL, 0
  58. MOV DI,cx
  59.  
  60. pinta4h:
  61. MOV ES:[DI], AL
  62. INC DI
  63. INC DH
  64. CMP DH, 30
  65. jbe pinta4h
  66.  
  67.  
  68. ENDM
  69.  
  70. MOV AX,@DATA
  71. MOV DS,AX
  72.  
  73. MOV ah,0
  74. MOV al,13h
  75. int 10h
  76.  
  77. MOV AX, 0A000h
  78. MOV ES, AX
  79.  
  80. macro_letra_a pixfila_a,pixcol_a
  81.  
  82. MOV AH,0
  83. INT 16h
  84.  
  85. CMP AX, 011Bh
  86. JE SALIR
  87.  
  88. SALIR:
  89.  
  90. MOV AH,4ch
  91. INT 21h
  92.  
  93. END
  94.  
  95.