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