999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Emu8086的匯編語言程序設計探討

2010-01-01 00:00:00
中國教育技術裝備 2010年3期

摘要 簡單介紹Emu8086功能,通過匯編程序實例調試,對比Emu8086和Debug在匯編語言程序設計中的應用。可以看出,Emu8086的使用使得匯編語言程序的編譯、執行變得更加直觀和清晰,有助于提高初學者的學習興趣。

關鍵詞 Emu8086;匯編語言;Debug

中圖分類號:TP368.1 文獻標識碼:B 文章編號:1671-489X(2010)03-0064-02

Exploration of Assemble Language Program Design based on Emu8086//Xing Jiang

Abstract Firstly functions of Emu8086 are introduced. A program of assemble language is debugged. Emu8086 and debug are contrasted in it. The beginner can make use of Emu8086.Because compiling and running of assemble language program became clearly and easily by Emu8086.

Key words Emu8086; assemble language; Debug

Author’s address College of Computer Science Technology, Hubei Normal University, Huangshi, Hubei, China 435002

1 前言

有很多人認為匯編語言的應用范圍很小,由此忽視它的重要性。其實匯編語言對每一個希望學習計算機科學與技術的人來說都是非常重要的,是不能不學習的語言。匯編語言是計算機能夠提供給用戶使用的最快而又最有效的語言,也是能夠利用計算機所有硬件特性并能夠直接控制硬件的唯一語言[1]。

Emu8086是8086微處理器的仿真軟件,完全兼容Intel和Amd系列,內部集成了匯編程序編譯器、連接器和豐富的參考資料、例程、學習指南等。該款軟件可模擬真實微處理器運行程序的詳細步驟,不僅能夠顯示寄存器、存儲器、堆棧、標志寄存器以及變量的值,而且還可通過雙擊鼠標來改變存儲器的值。除此之外,通過Emu8086可模擬顯示器、直流步進電機、交通紅綠燈和LED等外設[2]。

2 Emu8086和Debug的應用對比

對于Emu8086,可在工作區輸入并編輯源程序。單擊工具欄上的“emulate”按鈕,Emu8086便會自動完成對源程序的編譯和連接;如無錯誤,將會進入指令調試界面。通過該軟件提供的單步調試方式,可以方便觀察當時寄存器值和狀態。不僅如此,系統還可提供機器碼、反匯編指令和指令地址,非常直觀、便捷。

動態調試程序Debug,實際上是DOS中的一個外部命令,功能強大。通過Debug提供的命令,可以監視和控制被調試程序的運行過程;可以裝入、顯示和修改文件;可對磁盤直接進行物理讀寫或邏輯讀寫。但是對于初學者來說,Debug難以掌握和理解,缺乏友好的互動界面。

下面通過實例來說明Emu8086在匯編語言程序設計中的運用,同時對比Debug的使用。

該程序可將BX寄存器內的二進制數用十六進制數的形式在屏幕上顯示出來。

題意分析:可通過循環結構,將BX的內容從左到右,每4位為一組在屏幕上顯示出來;至于字符的顯示,可以通過DOS功能調用來實現。

1)Emu8086實現過程。

①編輯源代碼。在Emu8086工作區中輸入下列源代碼,并保存,如圖1所示。

… …

start: push ds

subax, ax

push ax

movbx,1010B

movch, 4

rotate:movcl, 4

rolbx, cl

moval, bl

andal, 0fh

addal, 30h ; ’0’~’9’ ASCII 30H~39H

cmpal, 3ah

jl printit

addal, 7h; ’A’~’F’ ASCII 41H~46H

printit:movdl, al

movah, 2

int21h

decch

jnzrotate

ret

… …

②編譯源程序。單擊Emu8086工具欄上的“compile”按鈕,系統會提示編譯好的文件存放位置和文件名稱。編譯成功后,在彈出的窗口上單擊“run”,即可得到結果,如圖2所示。

③模擬仿真。編譯成功后,單擊Emu8086工具欄上的“emulate”按鈕,便可將已編譯好的文件導入仿真器執行,如圖3所示。在該窗口中,可以看到當前正在執行的機器指令,以及編譯后的匯編語言指令的執行情況,也可看到相關寄存器等的數據變化情況。另外,單擊該窗口工具欄上的“single step”按鈕,可控制程序的單步執行。通過這種方式,可以很方便地觀察指令執行情況以及寄存器的變化。當然也可單擊“run”按鈕,直接執行程序。

2)Masm+Debug實現過程。

①編輯源代碼。在文本編輯器中編寫源代碼,保存。

②編譯源程序。在Windows XP的命令行方式下,調用Masm程序,對源程序進行編譯、鏈接,生成可執行文件,如圖4所示。運行生成的可執行文件,即可得到結果。如要詳細獲知指令執行情況或寄存器狀態,則需借助Debug的幫助。

③Debug調試。通過Debug命令來實現對程序動態跟蹤,則較為麻煩和困難。比如Debug:R命令可查看或修改寄存器的內容;Debug:T可實現單步跟蹤的目的,如圖5所示。

3 結語

本文通過一個匯編程序的調試,比較Emu8086與Debug的使用。可以看出,初學者通過Emu8086可以方便觀察數據的變化和程序的執行,加深對匯編語言的認識,提高學習興趣;而Debug則稍顯麻煩,增加學習的難度。

參考文獻

[1]沈美明,溫冬蟬.IBM-PC匯編語言程序設計[M].第2版.北京:清華大學出版社,2001

[2]8086 Micro processor Emulator[EB/OL].http:∥www.emu8086.com/dr/emu8086_assembler_solutions_faq.html

主站蜘蛛池模板: 97国产在线观看| 久青草免费在线视频| 天天摸天天操免费播放小视频| 国产在线自揄拍揄视频网站| 久久国产热| 国产精品污视频| 久青草免费在线视频| 国产成人久久综合一区| 欧美区一区| 喷潮白浆直流在线播放| 日韩黄色在线| 亚洲男人天堂2020| 亚洲国产理论片在线播放| 久久综合九色综合97网| 久久免费精品琪琪| 亚洲熟妇AV日韩熟妇在线| 91九色国产在线| 五月天福利视频| 亚洲色无码专线精品观看| 国产一二视频| 亚洲国产欧洲精品路线久久| 欧美在线视频a| 欧美不卡在线视频| 免费a在线观看播放| 午夜限制老子影院888| 久久精品66| 蜜芽一区二区国产精品| 精品少妇人妻一区二区| 久久久精品国产SM调教网站| 亚洲无码高清免费视频亚洲| 国产波多野结衣中文在线播放| 国产性爱网站| 毛片久久久| 精品国产成人高清在线| 久久99蜜桃精品久久久久小说| 欧美一区二区三区国产精品| 亚洲黄色视频在线观看一区| 欧美精品三级在线| 亚洲一区二区在线无码| 亚洲三级a| 伊人丁香五月天久久综合 | 亚洲AV无码一区二区三区牲色| 久久精品亚洲热综合一区二区| av一区二区三区在线观看 | 沈阳少妇高潮在线| 99这里只有精品6| 国产va在线观看| 日韩精品无码免费专网站| 欧美色亚洲| 四虎永久在线| 操国产美女| 亚洲男人在线天堂| 一级成人欧美一区在线观看| 内射人妻无套中出无码| 免费全部高H视频无码无遮掩| 亚洲av成人无码网站在线观看| 亚洲日本一本dvd高清| 日日拍夜夜嗷嗷叫国产| 中文字幕日韩欧美| 四虎AV麻豆| 国产亚洲精品自在久久不卡| 亚洲日产2021三区在线| 日韩欧美国产中文| 精品国产成人av免费| 好吊妞欧美视频免费| 91色爱欧美精品www| 九九精品在线观看| 手机精品福利在线观看| 噜噜噜久久| 日本免费一级视频| 中国一级特黄大片在线观看| 无码人妻免费| 国产区人妖精品人妖精品视频| 国产最新无码专区在线| 亚洲男人天堂网址| 午夜视频免费试看| 先锋资源久久| 欧美日韩高清| 国产欧美精品一区二区| 成人年鲁鲁在线观看视频| 一本一道波多野结衣av黑人在线| 成人国内精品久久久久影院|