JMP在匯編里是什么意思?
Jmp是無條件跳轉指令。遇到jmp就跳。跳轉指令不僅僅是jmp,jmp是無條件跳轉。jmp要配合條件跳轉指令使用,比如C語言程序:s0;for(inti0;i10I){sI;}可以編譯成相當于以下匯編代碼的指令:
Mov:CMP:MOVs,
用匯編語言編寫,判斷鍵盤輸入的是否是Y若輸入的是Y則顯示YESY若不是則顯示NOTY?
首先用1號函數輸入一個字符,與cmp指令進行比較,然后分別輸出需要的兩個字符串。這個程序可以顯示"YESY"大寫和小寫的y。如果只有大寫"Y"是輸出所必需的,只需刪除行"安達爾,11011111b"在節目中。
assumecs:cod:datadatasegmentyesydbeyesy$notydbNOTY$dataendscod:movax,datamovds,axmovah,1int21handal,11011111b如果輸入小寫字母,則轉換為大寫CMPal,yjzyl:l:
我們知道MBR分區的硬盤最多可以設置四個主分區,每個主分區可以安裝不同的操作系統。被設置為活動分區后,對應分區下的操作系統就可以啟動了。
該日志記錄了硬盤MBR啟動代碼的修改,在啟動過程中動態修改硬盤的活動分區,從而實現不同操作系統的啟動。
1.默認引導已被設置為活動分區的主分區。
2.電腦啟動時,按右shift鍵啟動第一個主分區(hd0,0)。
3.電腦啟動時,按左shift鍵啟動第二個主分區(hd0,1)。
4.電腦啟動時,按ctrl啟動第三個主分區(hd0,2)。
5.電腦啟動時,按alt啟動第四個主分區(hd0,3)。
我沒有。;不改變硬盤的啟動代碼,只是在我添加的東西的開頭改了一個跳轉代碼。代碼執行。添加的代碼所占用的空間就是原始MBR錯誤信息所在的空間。我減少了錯誤信息,所以如果有錯誤,仍然會有提示。
實施流程:
1.運行硬盤分區軟件,將MBR保存為文件MBR.DAT。
2.在XPDOS命令行下運行DEBUG,按照設想的功能進行匯編,然后反匯編得到機器碼;
3.用UltraEdit打開MBR.dat文件,把機器碼一個一個輸入到對應的地址。將偏移地址25和26的值從#341c#34和#3406#34更改為#3462#34和#3407#34(跳轉到附加代碼執行)。。
4.將修改后的MBR.dat文件寫回硬盤的第一個扇區。
這是第一種修改方法:(添加的代碼是MBR的錯誤信息所在的地址。這種MBR具有較少的錯誤信息和緊湊的空間。)
添加的代碼從MBR的第354個字節開始,具體代碼如下:
0000:0762B402MOV啊,02
0000:0764CD16INT16
0000:0766240F和AL,0F
0000:07683c00CMPAL,00
0000:076a7438JZ07a4
#是否按下了右shift鍵?
0000:076CA801測試AL,01
0000:076e750cJNZ077c
#是否按下了左移鍵?
0000:0770A802測試AL,02
0000:0772750dJNZ0781
ctrl鍵是否按下?
0000:0774A804測試AL,04
0000:0776750:0778A808測試AL,08
0000:077a750fJNZ078b
#第一個主分區激活字節地址
0000:077cbbb:077f:0781bbce07MOVBX07C:0784:0786bbd:0789:078bbb:078:07908826b:07948826ce07MOV[07C:07988826de07MOV[07DE],啊