![]() |
麻煩請會Visual C++ 6.0的朋友幫忙一下
我用 W32Dasm 將一個由 Microsoft Visual C++ 6.0 所寫的小程式反組譯,
想把裡面位址 00482525 的 JNE 指令改成 JE ,請問要如何修改? 還有能否告訴我幾個基本指令 JNE'JE'JMP''MOV,組譯成電腦的機械碼後,是哪些數字? 我是程式文盲,請各位幫忙一下,多謝.... 這是我要修改的檔案和 W32Dasm ![]() |
|
感謝 mini 版主指教,真是獲益良多
|
訂正前言 "通常機械碼指令 只用一個Byte表示"
由於 CPU不斷演進 所以新的指令 以一個Byte以不夠使用 比如 MMX 的指令就要兩個 Byte 只要使用 debug 就可了解了 請開啟DOS視窗輸入 debug 接著會出現 - 請輸入 a 進入組合語言編寫模式 接著想了解 mov 是何機械碼 打 mov ax,8 按[Enter] 接著按 Ctrl+C 離開組合語言編寫模式 接著輸入 g 上面的位址 即可得到 位址 B80800 MOV AX,0008 的顯示 所以推論 B8 就是 mov 的機械碼 過程如下 c:\>debug -a 13F5:0100 mov ax,8 13F5:0103 ^C -g 13F5:0100 AX 0008 BX **** ************** <---------此兩行暫存器值省略 13F5:0100 B80800 MOV AX,0008 -q c:\> |
所有時間均為台北時間。現在的時間是 03:40 PM。 |
Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.
『服務條款』
* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *