перевернуть число

Discussion in 'WASM.BEGINNERS' started by grozz, Sep 17, 2006.

  1. grozz

    grozz New Member

    Blog Posts:
    0
    Joined:
    Aug 7, 2006
    Messages:
    11
    нужно зеркально отразить число в регистре
    например
    было еах=1234567 стало еах=7654321
     
  2. Flasher

    Flasher Member

    Blog Posts:
    0
    Joined:
    Jan 31, 2004
    Messages:
    640
    bswap
     
  3. grozz

    grozz New Member

    Blog Posts:
    0
    Joined:
    Aug 7, 2006
    Messages:
    11
    нет эта команда неподходит
    она изменяет не по порядку а по битам
     
  4. infern0

    infern0 New Member

    Blog Posts:
    0
    Joined:
    Oct 7, 2003
    Messages:
    811
    Location:
    Russia
    Flasher
    а если подумать ?!
     
  5. grozz

    grozz New Member

    Blog Posts:
    0
    Joined:
    Aug 7, 2006
    Messages:
    11
    падумал попробовал
    mov eax,123
    bswap
    invoke wsprintf,buffer,_fMtStrinG,eax
    invoke MessageBox,buffer,buffer,MB_OK
    2063597568
     
  6. BUGOR

    BUGOR New Member

    Blog Posts:
    0
    Joined:
    Aug 14, 2005
    Messages:
    44
    Code (Text):
    1.   mov eax,1234567h
    2.  
    3.   xor ebx,ebx
    4.   mov bl,al
    5.   shl bx,4
    6.   add bl,bh
    7.   xor ecx,ecx
    8.   mov cl,bl
    9.  
    10.   mov edx,3
    11.   @@:
    12.     shr eax,8
    13.     movzx ebx,al
    14.     shl bx,4
    15.     add bl,bh
    16.     shl ecx,8
    17.     mov cl,bl
    18.   dec edx
    19.   jne @b
    20.   mov eax,ecx
    Не надо меня пинать, я сам знаю, что метод слесарский, зато работает:)
     
  7. grozz

    grozz New Member

    Blog Posts:
    0
    Joined:
    Aug 7, 2006
    Messages:
    11
    догнал
    shr eax,24!
    всем спасибо
     
  8. IceStudent

    IceStudent Active Member

    Blog Posts:
    0
    Joined:
    Oct 2, 2003
    Messages:
    4,300
    Location:
    Ukraine
    grozz
    Да уж..
     
  9. leo

    leo Active Member

    Blog Posts:
    0
    Joined:
    Aug 4, 2004
    Messages:
    2,542
    Location:
    Russia
    сдвиг eax вправо на 24-факторил :lol: