《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 解決方案 > 用匯編語言實(shí)現(xiàn)RESET啟動(dòng)和熱啟動(dòng)

用匯編語言實(shí)現(xiàn)RESET啟動(dòng)和熱啟動(dòng)

2017-07-23
關(guān)鍵詞: 匯編語言

程序名: RESET.ASM/BOOT.ASM 程序類別: 完整的匯編語言程序

功能: 用程序完成RESET啟動(dòng)和熱啟動(dòng)

使用說明: 匯編連接以后轉(zhuǎn)換為com文件運(yùn)行

程序說明:

在日常用機(jī)過程中,如果出現(xiàn)了異常情況常常需要重新啟動(dòng)系統(tǒng) .對(duì)于IBM PC 以及其兼容機(jī),除了開機(jī)冷啟動(dòng)外,還有熱啟動(dòng)和R ESET開關(guān)復(fù)位啟動(dòng),他們的共同特點(diǎn)是轉(zhuǎn)入BIOS的入口點(diǎn)(即ROM 的起始單元FFFF:0處),執(zhí)行該處的跳轉(zhuǎn)指令,轉(zhuǎn)向啟動(dòng)程序,該啟 動(dòng)程序在執(zhí)行過程中需檢測(cè)復(fù)位標(biāo)志字(在地址0040:0072處,占2 個(gè)字節(jié))的值,若為1234則啟動(dòng)是不檢測(cè)內(nèi)存;若非1234則啟動(dòng)先檢 測(cè)內(nèi)存,再啟動(dòng)系統(tǒng).熱啟動(dòng)和RESET啟動(dòng)的不同之處在于熱啟動(dòng)時(shí) 不檢測(cè)內(nèi)存,而RESET啟動(dòng)是需要檢測(cè)內(nèi)存.

下面的倆個(gè)程序分別實(shí)現(xiàn)RESET啟動(dòng)和熱啟動(dòng).經(jīng)過匯編,連接再轉(zhuǎn) 換成文件后才能運(yùn)行.

RESET.ASM (RESET開關(guān)復(fù)位啟動(dòng)程序)

CODE1 SEGMENT AT 0FFFFH
ASSUME CS:CODE1
ADDR LABEL FAR
CODE1 ENDS
CODE SEGMENT
ORG 100H
ASSUME CS:CODE,DS:CODE,ES:CODE
START:
JMP FAR PTR ADDR
CODE ENDS
END START

BOOT.ASM (熱啟動(dòng)程序)

CODE1 SEGMENT AT 0FFFFH
ASSUME CS:CODE1
ADDR LABEL FAR
CODE1 ENDS
CODE SEGMENT
ORG 100H
ASSUME CS:CODE,DS:CODE,ES:CODE
START:
MOV AX,0040H
MOV DS,AX
MOV AX,1234H
MOV SI,0072H
MOV [SI],AX
JMP FAR PTR ADDR
CODE ENDS
END START


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。