Наблюдение за изменением переменной в отладчике Turbo Debugger - Assembler
Формулировка задачи:
Только начал изучать ассемблер и столкнулся с парой вопросов. У меня есть массив который состоит из ссылок. Для начала хотелось бы с помощью турбо дебагера найти его в сегменте данных. Не очень понимаю как узнать непосредственно адрес ячейки где он лежит.
Листинг программы
- .model small
- .stack 100h
- .data
- mas dw a1,a2,a3,a4
- a1 db 15
- a2 db 14
- a3 db -20
- a4 db -10
- a0 db 0
- len equ $-mas
- .code
- start:
- mov ax,seg(mas)
- mov ds,ax
- lea bx,[mas]
- xor si,si
- mov cx,len
- mov ah,2
- m1:
- mov dl,bx[si]
- int 21h
- add si,type(mas)
- loop m1
- jmp exit
- exit:
- mov ax,4C00H
- int 21h
- end start
Решение задачи: «Наблюдение за изменением переменной в отладчике Turbo Debugger»
textual
Листинг программы
- m1:
- mov di,[bx+si] ; получаем [B]указатель[/B]
- cmp [di],-15 ; сравниваем [B]элемент[/B] по [B]указателю[/B] [bx+si] с -15
- jge next ; больше или равно - ничего не делаем
- mov [bx+si],0 ; зануляем [B]указатель[/B]
- next:
- add si,2
- loop m1
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д