Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.10.08;
Скачать: [xml.tar.bz2];

Вниз

MASM   Найти похожие ветки 

 
ArtemESC ©   (2006-09-17 15:34) [0]

Запутался с адресацией:
  Скажем объявляю переменную
    A dw 100h  
В книжке написано, что после mov ax, A ...  ax содержит 100h
Но A это же как метка, и должна быть равна смещению относительно начала сегмента, например определение длины:
A db 10h, 20h
P db $ - A; P - длина строки (A - адрес, относительно начала сегмента)
 Получаеться что mov ax, A это тоже, что и mov ax, [A], в общем не понял?


 
Anatoly Podgoretsky ©   (2006-09-17 15:36) [1]

Набор слов


 
begin...end ©   (2006-09-17 15:40) [2]

> ArtemESC ©   (17.09.06 15:34)

> Получаеться что mov ax, A это тоже, что и mov ax, [A], в
> общем не понял?


Отладчик -- оно рулёз.


 
Tirael ©   (2006-09-17 17:43) [3]

выпей пива чтоб не тормозить )

А - адрес, забей на него, само значение адреса, т.е. этого твоего смещения "относительно начала сегмента" (под дос чтоль пишешь?) тебе нафик не надо

размер ячейки ты же пишешь - dw тоесть d - data w-word, тоесть слово, тоесть 2 байта.

и вот у тя гдето в памяти (неважно где) есть ячейка размером 2 байта в которой прописано 100h

ИМХО в книжке очепятка, mov ax, A занесет в ах какраз адрес а не данные, а конструкция mov ax, [A] заносит данные по этому адресу. в асме все просто, так что купи правильную книжку ))

P db $ - A; P - длина строки (A - адрес, относительно начала сегмента) - вот это и правда ппц, ты хоть сам понял что написал?


 
Чапаев ©   (2006-09-17 17:46) [4]

> d - data

d - define ;-)


> mov ax, A занесет в ах какраз адрес а не данные

Мдя. Сказал.


> вот это и правда ппц, ты хоть сам понял что написал?

Наверное, не понял. Но написал правильно.


 
ArtemESC ©   (2006-09-17 17:47) [5]

Tirael ©  
ИМХО в книжке очепятка, mov ax, A занесет в ах какраз адрес а не данные, >>а конструкция mov ax, [A] заносит данные по этому адресу. в асме все >>просто, так что купи правильную книжку ))


 Значет в книжке много таких опечаток...


 
Tirael ©   (2006-09-17 18:15) [6]

"d - define" ну мож и define, бывает запоминаешь как кажется и привязывается... главное делу не мешает.

насчет переменной даже не знаю, я на асме не писал, я на асме проги взламывал ))

под отладчиком если

mov ax, число - то в ах это число
mov ax, [число] - то в ах данные по адресу указанному числом

мож я и не прав и переменные обрабатываются по другому, хз, но
mov ax, A
и
mov ax, [A]
одно и тоже - это както сомнительно, скорее если
mov ax, A - заносит данные, то mov ax, [A] вообще не применима
а для занесения адреса чтото вроде mov ax, *A

все это ИМХО, книжки под рукой нет


 
Чапаев ©   (2006-09-17 18:25) [7]

> mov ax, [число] - то в ах данные по адресу указанному числом

Неправда. Вот если mov ax,DS:[число] -- тогда да.


 
Tirael ©   (2006-09-17 18:31) [8]

правдв правда, я же не досовские ломал ))


 
Tirael ©   (2006-09-17 18:36) [9]

ЗЫ. под софтайсом ты такого не увидишь, DS это регистр, он настраивается отдельно, заранее, это MASMу или TASMу ты такое скормишь, но под отладчиком по mov идет только число без всяких префиксов, а под вынь в пределах процесса про селекторы можно забыть и вообще на DS, CS не смотреть


 
homm ©   (2006-09-18 17:03) [10]

Есть 3 следующие конструкции:
mov ax, [A]
mov ax, A
mov ax, offset A

Первая и последня разночтений не вызывает, а вот вторую разные компиляторы читают по разному. Для MASM и TASM это ъквивалентно mov ax, [A], в то время как FASM интерплетирует именно как mov ax, offset A.


 
ArtemESC ©   (2006-09-18 17:05) [11]

homm ©   (18.09.06 17:03) [10]
Теперь понятно, спасибо...



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.10.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.034 c
15-1158259297
Владимир_мпп
2006-09-14 22:41
2006.10.08
MS Excel


2-1158425181
PSPF2003
2006-09-16 20:46
2006.10.08
StrToHex?


2-1158321256
DmiSb
2006-09-15 15:54
2006.10.08
Как узнать какое поля ввода потеряло фокус ?


15-1158322063
nstur
2006-09-15 16:07
2006.10.08
Калькулятор


15-1158236541
Ega23
2006-09-14 16:22
2006.10.08
С Днём рождения! 14 сентября





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский