Помогите придумать аналог pavgb, если доступен только ммх.

Тема в разделе "WASM.ASSEMBLER", создана пользователем ton4eg, 9 фев 2007.

  1. ton4eg

    ton4eg New Member

    Публикаций:
    0
    Регистрация:
    22 янв 2007
    Сообщения:
    5
    Пречем доступны только три регистра:
    pavg dst,src,temp
    src трогать нельзя.
     
  2. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    если перед делением на 2 не прибавлять 1 то можно так
    Код (Text):
    1. paddb dst,src
    2. movq temp,src
    3. pcmpgtb temp,dest
    4. psrlw temp,1 ;нужно psrlb но такой команды нет, поэтому придётся использовать маски
    5. pand temp,8080808080808080h ;это конечно должно быть в памяти (или в регистре)
    6. pand dst,7F7F7F7F7F7F7F7Fh ;это тоже
    7. por dst,temp
    а если делать +1 то наверно быстрее будет в обычных регистрах сделать