当前位置: 代码迷 >> 汇编语言 >> 今天小弟我蛋疼了
  详细解决方案

今天小弟我蛋疼了

热度:5798   发布时间:2013-02-26 00:00:00.0
今天我蛋疼了
本帖最后由 aini6658 于 2013-01-08 19:10:31 编辑
表示今天无聊到蛋疼,决定不用查表法来将10进制转换为16进制(PS:因为大家设置缓存一般都对齐4字节的,所以这个也是只处理对齐部分的)
不知道还有没改进余地呢

IFNDEF _GLOBE_INC_
    INCLUDE Globe.inc
ENDIF;// !_GLOBE_INC_

COMMENT    */////////////////////////////////////////////////////////////////////////////////////////////
//======================================================================================================
// [value]::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//     0         1         2         3         4         5         6         7         8         9
// 0000|0000 0000|0001 0000|0010 0000|0011 0000|0100 0000|0101 0000|0110 0000|0111 0000|1000 0000|1001
//                         A         B         C         D         E         F
//                     0000|1010 0000|1011 0000|1100 0000|1101 0000|1110 0000|1111
// [string]:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//     0         1         2         3        4         5          6         7         8         9
// 0011|0000 0011|0001 0011|0010 0011|0011 0011|0100 0011|0101 0011|0110 0011|0111 0011|1000  0011|1001
//               A         B         C         D         E         F
//           0100|0001 0100|0010 0100|0011 0100|0100 0100|0101 0100|0110
//======================================================================================================*
.CODE
HexBufferA PROC STDCALL \
USES esi edi edx ebx

pbSource EQU <esi>
pbDest  EQU <edi>
dwLength EQU <ecx>
temp  EQU <ebx>

ALIGN AlignSize

    shr dwLength,2

HexBuffer_LOOP_DWORD:
    mov             eax,DWORD PTR[pbSource]
    mov             edx,eax
  相关解决方案