Вопрос про максимальную длину машинной команды

Тема в разделе "WASM.BEGINNERS", создана пользователем Scr1pt_, 22 мар 2007.

  1. Scr1pt_

    Scr1pt_ New Member

    Публикаций:
    0
    Регистрация:
    14 мар 2007
    Сообщения:
    34
    Не хотелось создавать новую тему для вопросов по машинным командам, так что не ругайте сильно.

    Появился вопросик:
    вот рассматриваю простую, на первый взгляд, команду: mov ds:0001,cx.

    Машинная команда этой инструкции такова: 89 0E 0001

    Никак не могу понять, как получился такой байт mod r/m.

    Вот расмотрим: 00 001 110

    00 - mod - показывает, что смещения нет, эффективный адрес первого операнда высчитывается из базового и индексного регистров.

    001 - поле reg. Здесь всё понятно.

    110 - r/m - в свою очередь, показывает, что эффективный адрес берётся из 16-битного смещения, которое идёт сразу на битом mod r/m. Но поля mod и r/m противоречат друг другу!
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Читаем Юрова дальше:
    ... для этого поля (mod=00) существуют исключения. Их суть (r/m=110 для 16бит и r/m=101 или 100 для 32бит) хорошо видна из таблиц 2.5 и 2.6
     
  3. Scr1pt_

    Scr1pt_ New Member

    Публикаций:
    0
    Регистрация:
    14 мар 2007
    Сообщения:
    34
    Нет такого!
    Пожалуйста, дай номер страницы и номер издания (первое или второе).

    Хочу убедиться! ;)
     
  4. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Scr1pt_
    В. Юров "Assembler. Специальный справочник" 2-е издание. СПб.:Питер, 2004. - 412 с.: ил.

    страница 30, сверху
    если нету книжки, могу отсканировать
     
  5. Scr1pt_

    Scr1pt_ New Member

    Публикаций:
    0
    Регистрация:
    14 мар 2007
    Сообщения:
    34
    А это в справочнике! А я в самом учебнике искал!

    Отсканируй, пожалуйста, если не затруднит. Этот справочник мне бы очень пригодился.
     
  6. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    весь справочник сканить?)))))))00
     
  7. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
  8. Scr1pt_

    Scr1pt_ New Member

    Публикаций:
    0
    Регистрация:
    14 мар 2007
    Сообщения:
    34
    Нет :) Не подскажешь где можно слить этот справочник в pdf?
     
  9. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    почитай статьи Аквиллы. Хотя у него многое не описано, но разбор байта modr/m нормально сделан.
     
  10. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582