Наблюдение за изменением переменной в отладчике Turbo Debugger - Assembler

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

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

Только начал изучать ассемблер и столкнулся с парой вопросов. У меня есть массив который состоит из ссылок. Для начала хотелось бы с помощью турбо дебагера найти его в сегменте данных. Не очень понимаю как узнать непосредственно адрес ячейки где он лежит.
Листинг программы
  1. .model small
  2. .stack 100h
  3. .data
  4. mas dw a1,a2,a3,a4
  5. a1 db 15
  6. a2 db 14
  7. a3 db -20
  8. a4 db -10
  9. a0 db 0
  10. len equ $-mas
  11. .code
  12. start:
  13. mov ax,seg(mas)
  14. mov ds,ax
  15. lea bx,[mas]
  16. xor si,si
  17. mov cx,len
  18. mov ah,2
  19. m1:
  20. mov dl,bx[si]
  21. int 21h
  22. add si,type(mas)
  23. loop m1
  24. jmp exit
  25. exit:
  26. mov ax,4C00H
  27. int 21h
  28. end start

Решение задачи: «Наблюдение за изменением переменной в отладчике Turbo Debugger»

textual
Листинг программы
  1.  m1:
  2.  mov di,[bx+si] ; получаем [B]указатель[/B]
  3.  cmp [di],-15 ; сравниваем [B]элемент[/B] по [B]указателю[/B] [bx+si] с -15
  4.  jge next ; больше или равно - ничего не делаем
  5.  mov [bx+si],0 ; зануляем [B]указатель[/B]
  6.  next:
  7.  add si,2
  8.  loop m1

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


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

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

8   голосов , оценка 3.875 из 5

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

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

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