вопрос заключается вот в чём - работал в olly db и заметил,что в дампе отображается одно значение(01DC9287) а в регистр помещается другое - (8792DC01) почему так?почему значения в дампе отображаются не так,как значения в регистрах?
arrrg ...и по младшему адресу лежит младший байт, так как в x86 используется little-endian порядок. Вот у 68K в дампе было бы в том же порядке, потому big-endian.
JCronuz Зачем? И так все понятно: скажем EAX = 01234567, EDX = 004B0000 теперь после выполнения MOV [EDX], EAX в дампе видим: 004B0000 | 67 45 23 01 все правильно, это одна из тех вещей, к которым надо просто привыкнуть.
никакой обратной последовательности, все по порядку, младший байт всегда лежит по младшему адресу ну разве что визуально
Тут уже была тема. Если писать по "еврейски", то все встанет на место : F E D C B A 9 8 7 6 5 4 3 2 1 0 ==== тут пишем байты ======== Теперь байты в слове стоят как надо Правда теперь адресуется "хвост" слова :-(
valterg Если писать "по-еврейски", то придется для большей схожести поменять местами четные буквы с нечетными 12345678==78563412
valterg насколько я помню, и в иврите, и в арабском цифры пишутся как и у нас - слева направо http://www.rusyaz.ru/is/hebrew.html
arrrg В Оле можно по правой кнопке в окне дампа переключить вид на Long -> Hex или Address with ASCII dump
вопрос не глупый. Он невежественный. Милостивые господа! Это как же вы программируете, не зная основ архитектуры микропроцессоров Intel? Фирменную документацию не читали - это ясно. Но хотя бы первую главу любого учебника? Сил нет?
[offotp] leo А это не ваше случайно? http://www.projects.org.ua/forum/viewtopic.php?p=9688&sid=8c371572b7bfec31983170976f692300 [/offtop]