@sddvxd

Что означает DS: в языке ассемблера?

Что означает строка mov ax,word ptr ds:[004020d8] , а именно ds:
то, что это записывает в младшую часть eax 2 байта по адресу в памяти (или файле, не совсем понимаю) 004020d8.
а то, что означает ds не знаю. я же просто хочу вытащить данные
  • Вопрос задан
  • 3003 просмотра
Решения вопроса 1
15432
@15432
Системный программист ^_^
Программе при запуске операционной системой выделяется участок адресов физической памяти. Внутри программа оперирует адресами вида 4020D8, но реальный физический адрес переменной будет [ds]+4020D8, ds это тоже регистр, в котором записан адрес "начала" сегмента данных, того самого диапазона адресов, выделенного программе. Ну это если по-простому
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
saboteur_kiev
@saboteur_kiev
software engineer
data segment

обычно оперируем несколькими сегментами (64к страницами), типа code segment, data segment, stack... зависит от архитектуры.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы