Глупейшая проблема с размерами регистров при умножении

Тема в разделе "WASM.BEGINNERS", создана пользователем AxXxB, 9 апр 2008.

  1. AxXxB

    AxXxB New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2008
    Сообщения:
    13
    Наитупейший вопрос. При выполнении "imul cx,cl,70d", разумеется, выскакивает "Operand sizes don't match". Но даже если поставить перед всеми операндами word (или byte), проблема не решается. Что делать? Заранее спасибо :)
     
  2. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    IMUL reg16, reg/mem16, imm8
     
  3. AxXxB

    AxXxB New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2008
    Сообщения:
    13
    IceStudent, спасибо, но, как оказалось, не обязательно 16, 8-битовые регистры/память тоже можно использовать, главное, чтобы размеры операндов одинаковые были.
     
  4. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    чтоб не оказывалось надо ж мануалы читать сперва
     
  5. AxXxB

    AxXxB New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2008
    Сообщения:
    13
    Тысячу извинений. Просто я думал, что есть способ умножить содержимое 4-битового регистра на число и поместить результат в 8-битный, но в один шаг все-таки так сделать не получится. Всем спасибо за внимание :)
     
  6. Freeman

    Freeman New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2005
    Сообщения:
    1.385
    Адрес:
    Ukraine
    чото новое
     
  7. wsd

    wsd New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2007
    Сообщения:
    2.824
    [del]
     
  8. AxXxB

    AxXxB New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2008
    Сообщения:
    13
    Ошибся я опять :) Нуб нубом. В голову стукнуло, что в ax и т. д. 8 бит, а в ah/al и т. д. 4 бита. Дико извиняюсь.