Assembler

Тема в разделе "WASM.BEGINNERS", создана пользователем mr.fenix, 27 сен 2006.

  1. mr.fenix

    mr.fenix New Member

    Публикаций:
    0
    Регистрация:
    10 сен 2006
    Сообщения:
    2
    Люди добрые кто знает ассемблер проверьте если не сложно!
    Задание ! Даны 2 однобайтовых числа нужно выполнить сложение, умножение, вычитание, деление.
    Рез-т вывести на экран !
    Заранее благодарю !(Неделю старался над этим)

    Код (Text):
    1. Сложение
    2. MSM
    3. MODEL SMALL
    4. .DATA
    5. P1
    6. P2
    7. P3 5 DUP (0)
    8. .STACK 256
    9. .CODE
    10. BEGIN:
    11. MOV AX, @ data
    12. MOV DS, AX
    13. MOV AX, Word PTR P1
    14. ADD AX, Word PTR P2
    15. MOV Word PTR P3, AX
    16. MOV AX, Word PTR P1+2
    17. ADC AX, Word PTR P2+2
    18. MOV Word PTR P3+2, AX
    19. ADC P3+4, 0
    20. MOV AX, 4c00h
    21. INT 21h
    22. END BEGIN.
    23.  
    24. Вычитание
    25. MSM
    26. MODEL SMALL
    27. .DATA
    28. P1
    29. P2
    30. P3 2 DUP (0)
    31. .STACK 256
    32. .CODE
    33. BEGIN:
    34. MOV AX, @ data
    35. MOV DS, AX
    36. MOV AX, P1
    37. SUB AX, P2
    38. MOV P3, AX
    39. MOV AX, P1+2
    40. SBB AX, P2+2
    41. MOV P3+2, AX
    42. MOV AX, 4c00h
    43. INT 21h
    44. END BEGIN.
    45.  
    46. Умножение
    47. MSM
    48. MODEL SMALL
    49. .DATA
    50. P1
    51. P2
    52. P3 2 DUP (0)
    53. .STACK 256
    54. .CODE
    55. BEGIN:
    56. MOV AX, @ data
    57. MOV DX, AX
    58. MOV AX, P1
    59. MUL AX, P2
    60. MOV P3, AX
    61. MOV AX, P1+2
    62. MUL AX, P2+2
    63. MOV P3+2, AX
    64. MOV AX, 4c00h
    65. INT 21h
    66. END BEGIN.
    67.  
    68. Деление
    69. MSM
    70. MODEL SMALL
    71. .DATA
    72. P1
    73. P2
    74. P3 2 DUP (0)
    75. .STACK 256
    76. .CODE
    77. BEGIN:
    78. MOV AX, @ data
    79. MOV DS, AX
    80. MOV AX, P1
    81. DIV AX, P2
    82. MOV P3, AX
    83. MOV AX, P1+2
    84. DIV AX, P2+2
    85. MOV P3+2, AX
    86. MOV AX, 4c00h
    87. INT 21h
    88. END BEGIN.
     
  2. DJK

    DJK Member

    Публикаций:
    0
    Регистрация:
    8 авг 2006
    Сообщения:
    39
    Странно как-то видеть такие строки:
    P1
    P2
    P3 5 DUP (0)

    Может ты имел ввиду:
    P1 dw 0 ;Слово
    P2 dw 0
    P3 dw 5 dup (0)

    Проще было программпировать под консоль Windows.
     
  3. DJK

    DJK Member

    Публикаций:
    0
    Регистрация:
    8 авг 2006
    Сообщения:
    39
    Я проверю, и пришлю ответ в воскресенье.
    Все операции со знаковыми операндами?
     
  4. mr.fenix

    mr.fenix New Member

    Публикаций:
    0
    Регистрация:
    10 сен 2006
    Сообщения:
    2
    Токо деление со знаком ! А остальные нет ! (я че на знаковые делал получается?)