кросс-платформенные типы данных

Тема в разделе "WASM.ZEN", создана пользователем volodya, 14 авг 2006.

  1. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    SWR
    Такого режима нет и быть не может, т.к. помимо увеличения разрядности GPR (РОН) еще и количество всех регистров увеличено с 8 до 16, поэтому с помощью обычных байтов ModR/M и SIB закодировать все комбинации (reg,r/m) просто невозможно и поэтому префиксы REX содержат биты расширения кодировки ModR/M и SIB.
    PS: Отсюда еще один интересный момент для тех, кто еще не знает: префикс REX это не фиксированное значение, а набор из 16 значений, которые в забитой до предела системе команд х86 найти невозможно, поэтому пришлось чем-то пожертвовать и пожертвовали ни чем иным, как всеми горячо любимыми однобайтовыми варинтами INC и DEC - оно и понятно, т.к. оптимизация по размеру кода в x86-64 видимо становится не актуальной ;)