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

Вниз

методы адрессации машинных команд   Найти похожие ветки 

 
sten   (2005-02-07 19:24) [0]

что это такое ? Такой вопрос на програботку дали знакомому по гос. экзамену (ассемблер)


 
Kerk ©   (2005-02-07 19:36) [1]

ну винапи здесь вообще в тему...

а по сабжу.. RTFM GOOGLE YANDEX


 
Poirot ©   (2005-02-07 20:11) [2]

Абсолютная и относительная IMHO!


 
Kerk ©   (2005-02-07 20:33) [3]

Poirot ©   (07.02.05 20:11) [2]
Абсолютная и относительная IMHO!


согласен :)
ну... можно сказать, что вопрос мы проработали :)))


 
begin...end ©   (2005-02-07 20:45) [4]

> sten   (07.02.05 19:24)

> методы адрессации машинных команд
> что это такое ?

Адресация машинных команд или операндов команд?

Если первое, то мне вопрос неясен. А если второе, то адресация может быть прямой (когда адрес операнда содержится в самой команде) и косвенной. В свою очередь, прямая адресация делится на относительную и абсолютную, а косвенная - на базовую, индексную, и базовую и индексную со смещением.


 
Poirot ©   (2005-02-07 20:46) [5]

>> ну... можно сказать, что вопрос мы проработали :)))
Начнём с малого:))) :))
Но begin...end предмет явно знает на 5+ :)
Красный диплом:))


 
Fay ©   (2005-02-07 21:00) [6]

2 Poirot ©   (07.02.05 20:46) [5]
>> Красный диплом:))
И малиновые штаны 8)


 
Digitman ©   (2005-02-08 09:37) [7]


> sten



> методы адрессации машинных команд


если воспринимать вопрос "в лоб", то для ЦП i80x86 метод всего один, и сводится он к вычислению адреса очередной маш.инструкции с использованием тек.значений пары регистров cs:[e]ip

cs - регистр селектора сегмента кода (code segment)
[e]ip - регистр смещения в сегменте кода (([extended] instruction pointer))

механизм расчета процессором эффективного исполнительного адреса очередной маш.инструкции различен и находится в прямой зависимости от текущего установленного режима работы процессора - RM (VM86), PM

самый простой механизм - для RM (реальный режим, Real Mode)
в этом режиме адрес очер.маш.инструкции расчитывается процессором так :

addr = cs * 4 + ip


 
Чапаев ©   (2005-02-08 09:48) [8]

не забываем ещё непосредственную адресацию... mov ax,1234


 
Alex Konshin ©   (2005-02-08 09:56) [9]

Хм... А кто вам сказал, что речь идет про x86? Из вопроса это не очевидно. И что этот вопрос делает в разделе "WinAPI" уж тем более  не ясно...


 
Просто Джо ©   (2005-02-08 10:08) [10]


>  [8] Чапаев ©   (08.02.05 09:48)
> не забываем ещё непосредственную адресацию... mov ax,1234


А где здесь адресация?


 
Kerk ©   (2005-02-08 10:09) [11]

Просто Джо ©   (08.02.05 10:08) [10]
видимо

> mov ax,1234


 
Digitman ©   (2005-02-08 10:18) [12]


> Alex Konshin ©   (08.02.05 09:56) [9]


> кто вам сказал, что речь идет про x86?


WinXP же указана ..

ДАЖЕ если она эмулируется, все равно  ..


 
begin...end ©   (2005-02-08 12:48) [13]

> [10] Просто Джо ©   (08.02.05 10:08)

>> mov ax,1234
> А где здесь адресация?

Здесь явно указывается значение, которое нужно поместить в регистр AX. Т.е. операнд 1234 будет содержаться в самОй машинной команде. А о прямой или косвенной адресации операндов, насколько я понимаю, может идти речь тогда, когда эти самые операнды находятся НЕ в команде.

Но всё это относится к адресации операндов. А вот адресация машинных команд - это просто правила, по которым формируется, например, адрес следующей для выполнения машинной команды. Понятно, что команды эти находятся в сегменте кода. Следовательно, для получения адреса очередной команды адрес начала сегмента кода извлекается из регистра CS, каким-то образом преобразуется и складывается со смещением команды.

> [7] Digitman ©   (08.02.05 09:37)

> addr = cs * 4 + ip

Т.е. происходит сдвиг содержимого, извлекаемого из CS, только на 2 разряда?


 
Digitman ©   (2005-02-08 12:54) [14]


> begin...end ©   (08.02.05 12:48) [13]



> Т.е. происходит сдвиг содержимого, извлекаемого из CS, только
> на 2 разряда?


пардон ..

имелось ввиду cs shl 4 .. или cs * 16



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

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

Наверх





Память: 0.48 MB
Время: 0.04 c
14-1108020099
__max__
2005-02-10 10:21
2005.02.27
Проблемы с OpenFileMapping - Не удается найти указанный файл


1-1107928094
JohnKorsh
2005-02-09 08:48
2005.02.27
Как грамотно стиреть директорию ?


1-1108024952
VladRaven
2005-02-10 11:42
2005.02.27
RxDBLookupList как програмно установить (выделить синим).


14-1107860909
Okulyar
2005-02-08 14:08
2005.02.27
линзы


1-1108130837
Sergeich
2005-02-11 17:07
2005.02.27
Вхождение точки в полигон





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский