Матрица 4х4, адресация - Assembler

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. include io.asm
  2. s segment stack
  3. DB 256 DUP (?)
  4. s ends
  5. data segment
  6. m dw 4 dup (4 dup (?))
  7. sum dw (?)
  8. umn dw (?)
  9. cas dw (?)
  10. a2 db 0ah,0dh,'Error vvoda!!$'
  11. mes2 db 0ah,0dh,'Matrixa - $'
  12. mes3 db 0ah,0dh,'Summa - $'
  13. mes4 db 0ah,0dh,'Proizvedenie - $'
  14. mes5 db 0ah,0dh,'4astnoe - $'
  15. a dw (?)
  16. b dw (?)
  17. data ends
  18. code segment
  19. ASSUME CS:code,DS:data,SS:s
  20. start:
  21. MOV AX,data
  22. MOV DS,AX
  23. xor ax,ax
  24. mov si,0
  25. mov bx,0
  26. mov cx,4
  27. external:
  28. push cx
  29. mov cx,4
  30. mov si,0
  31. ;mov b,bx
  32. iternal:
  33. inint m[bx][si]
  34. ;mov bx,b
  35. add si,2
  36. loop iternal
  37. jcxz move_next
  38. move_next:
  39. pop cx
  40. add bx,2
  41. loop external
  42. mov bx,0
  43. mov si,2
  44. outword m[bx][si],10
Иногда outword выводит правильное значение, например если в bx,si записать 6, в остальных случаех выводит либо рандомное число массива, либо мусорное значение, правильно ли я выполнил адресацию при заполнение?

Решение задачи: «Матрица 4х4, адресация»

textual
Листинг программы
  1. add bx,si

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.786 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы