Получить значение по смещению Tasm - Assembler

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

У меня в регистре данных лежат два числа
dataseg segment para 'data'
   var1 dw 3 
   var2 dw 5 
 dataseg ends
Данные сдвинуты на 100h, и эта инструкция
mov dx, ds:[256]
записывает в регистр dx число var1. Я думал, что эта инструкция
mov dx, ds:[256+offset var2]
должна записать в регистр dx число var2, но вместо этого в регистре получаю адрес var2(т.е. 102). А можно получить само значение var2 по смещению?

Код к задаче: «Получить значение по смещению Tasm - Assembler»

textual
data_s segment 
   var1 dw 3 
   var2 dw 6 
 data_s  ends
 code_s segment
 assume ss:nothing,cs:code_s,ds:data_s,es: code_s
  begin   proc
   mov ax,ds:[256] 
 ret
 begin endp
 code_s ends
 end begin

10   голосов, оценка 3.800 из 5


СОХРАНИТЬ ССЫЛКУ