電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>X86匯編語言從實(shí)模式到保護(hù)模式PDF電子書免費(fèi)下載

X86匯編語言從實(shí)模式到保護(hù)模式PDF電子書免費(fèi)下載

2019-07-26 | pdf | 5.27 MB | 次下載 | 免費(fèi)

資料介紹

  《x86匯編語言:從實(shí)模式到保護(hù)模式》主要講述INTEL x86處理器的16位實(shí)模式、32位保護(hù)模式,至于虛擬8086模式,則是為了兼容傳統(tǒng)的8086程序,現(xiàn)在看來已經(jīng)完全過時(shí),不再進(jìn)行講述?!秞86匯編語言:從實(shí)模式到保護(hù)模式》的特色之一是提供了大量典型的源代碼,這些代碼以及相配套的工具程序可以到書中指定的網(wǎng)站,或者電子工業(yè)出版社華信教育資源網(wǎng)搜索下載

  每一種處理器都有它自己的機(jī)器指令集,而匯編語言的發(fā)明則是為了方便這些機(jī)器指令的記憶和書寫。盡管匯編語言已經(jīng)較少用于大型軟件程序的開發(fā),但從學(xué)習(xí)者的角度來看,要想真正理解計(jì)算機(jī)的工作原理,掌握它內(nèi)部的運(yùn)行機(jī)制,學(xué)習(xí)匯編語言是必不可少的。本書采用開源的NASM匯編語言編譯器和VirtualBox虛擬機(jī)軟件,以個(gè)人計(jì)算機(jī)廣泛采用的Intel處理器為基礎(chǔ),詳細(xì)講解了Intel處理器的指令系統(tǒng)和工作模式,以大量的代碼演示了16/32/64位軟件的開發(fā)方法,介紹了處理器的16位實(shí)模式和32位保護(hù)模式,以及基本的指令系統(tǒng)。這是一本有趣的書,它沒有把篇幅花在計(jì)算一些枯燥的數(shù)學(xué)題上。相反,它教你如何直接控制硬件,在不借助于BIOS、DOS、Windows、Linux或者任何其他軟件支持的情況下來顯示字符、讀取硬盤數(shù)據(jù)、控制其他硬件等。本書可作為大專院校相關(guān)專業(yè)學(xué)生和計(jì)算機(jī)編程愛好者的教程。

  第1章 十六進(jìn)制計(jì)數(shù)法

  1.1 二進(jìn)制計(jì)數(shù)法回顧

  1.1.1 關(guān)于二進(jìn)制計(jì)數(shù)法

  1.1.2 二進(jìn)制到十進(jìn)制的轉(zhuǎn)換

  1.1.3 十進(jìn)制到二進(jìn)制的轉(zhuǎn)換

  1.2 十六進(jìn)制計(jì)數(shù)法

  1.2.1 十六進(jìn)制計(jì)數(shù)法的原理

  1.2.2 十六進(jìn)制到十進(jìn)制的轉(zhuǎn)換

  1.2.3 十進(jìn)制到十六進(jìn)制的轉(zhuǎn)換

  1.3 為什么需要十六進(jìn)制

  本章習(xí)題

  第2章 處理器、內(nèi)存和指令

  2.1 最早的處理器

  2.2 寄存器和算術(shù)邏輯部件

  2.3 內(nèi)存儲(chǔ)器

  2.4 指令和指令集

  2.5 古老的Intel 8086處理器

  2.5.18086的通用寄存器

  2.5.2 程序的重定位難題

  2.5.3 內(nèi)存分段機(jī)制

  2.5.48086的內(nèi)存分段機(jī)制

  本章習(xí)題

  第3章 匯編語言和匯編軟件

  3.1 匯編語言簡(jiǎn)介

  3.2 NASM編譯器

  3.2.1 NASM的下載和安裝

  3.2.2 代碼的書寫和編譯過程

  3.2.3 用HexView觀察編譯后的機(jī)器代碼

  本章習(xí)題

  第4章 虛擬機(jī)的安裝和使用

  4.1 計(jì)算機(jī)的啟動(dòng)過程

  4.1.1 如何將編譯好的程序提交給處理器

  4.1.2 計(jì)算機(jī)的加電和復(fù)位

  4.1.3 基本輸入輸出系統(tǒng)

  4.1.4 硬盤及其工作原理

  4.1.5 一切從主引導(dǎo)扇區(qū)開始

  4.2 創(chuàng)建和使用虛擬機(jī)

  4.2.1 別害怕,虛擬機(jī)是軟件

  4.2.2 下載和安裝Oracle VM VirtualBox

  4.2.3 虛擬硬盤簡(jiǎn)介

  4.2.4 練習(xí)使用FixVhdWr工具向虛擬硬盤寫數(shù)據(jù)

  第2部分 實(shí)模式

  第5章 編寫主引導(dǎo)扇區(qū)代碼

  5.1 本章代碼清單

  5.2 歡迎來到主引導(dǎo)扇區(qū)

  5.3 注釋

  5.4 在屏幕上顯示文字

  5.4.1 顯卡和顯存

  5.4.2 初始化段寄存器

  5.4.3 顯存的訪問和ASCII代碼

  5.4.4 顯示字符

  5.4.5 MOV指令的格式

  5.5 顯示標(biāo)號(hào)的匯編地址

  5.5.1 標(biāo)號(hào)

  5.5.2 如何顯示十進(jìn)制數(shù)字

  5.5.3 在程序中聲明并初始化數(shù)據(jù)

  5.5.4 分解數(shù)的各個(gè)數(shù)位

  5.5.5 顯示分解出來的各個(gè)數(shù)位

  5.5 使程序進(jìn)入無限循環(huán)狀態(tài)

  5.7 完成并編譯主引導(dǎo)扇區(qū)代碼

  5.7.1 主引導(dǎo)扇區(qū)有效標(biāo)志

  5.7.2 代碼的保存和編譯

  5.8 加載和運(yùn)行主引導(dǎo)扇區(qū)代碼

  5.8.1 把編譯后的指令寫入主引導(dǎo)扇區(qū)

  5.8.2 啟動(dòng)虛擬機(jī)觀察運(yùn)行結(jié)果

  5.9 程序的調(diào)試技術(shù)

  5.9.1 開源的Bochs虛擬機(jī)軟件

  5.9.2 Bochs下的程序調(diào)試入門

  本章習(xí)題

  第6章 相同的功能,不同的代碼

  6.1 代碼清單6-1

  6.2 跳過非指令的數(shù)據(jù)區(qū)

  6.3 在數(shù)據(jù)聲明中使用字面值

  6.4 段地址的初始化

  6.5 段之間的批量數(shù)據(jù)傳送

  6.6 使用循環(huán)分解數(shù)位

  6.7 計(jì)算機(jī)中的負(fù)數(shù)

  6.7.1 無符號(hào)數(shù)和有符號(hào)數(shù)

  6.7.2 處理器視角中的數(shù)據(jù)類型

  6.8 數(shù)位的顯示

  6.9 其他標(biāo)志位和條件轉(zhuǎn)移指令

  6.9.1 奇偶標(biāo)志位PF

  6.9.2 進(jìn)位標(biāo)志CF

  6.9.3 溢出標(biāo)志OF

  6.9.4 現(xiàn)有指令對(duì)標(biāo)志位的影響

  6.9.5 條件轉(zhuǎn)移指令

  6.10 NASM編譯器的$和$$標(biāo)記

  6.11 觀察運(yùn)行結(jié)果

  6.12 本章程序的調(diào)試

  6.12.1 調(diào)試命令“n”的使用

  6.12.2 調(diào)試命令“u”的使用

  6.12.3 用調(diào)試命令“info”察看標(biāo)志位

  本章習(xí)題

  第7章 比高斯更快的計(jì)算

  7.1 從1加到100的故事

  7.2 代碼清單7-1

  7.3 顯示字符串

  7.4 計(jì)算1到100的累加和

  7.5 累加和各個(gè)數(shù)位的分解與顯示

  7.5.1 棧和棧段的初始化

  7.5.2 分解各個(gè)數(shù)位并壓棧

  7.5.3 出棧并顯示各個(gè)數(shù)位

  7.5.4 進(jìn)一步認(rèn)識(shí)堆棧

  7.6 程序的編譯和運(yùn)行

  7.6.1 觀察程序的運(yùn)行結(jié)果

  7.6.2 在調(diào)試過程中察看棧中內(nèi)容

  7.78086處理器的尋址方式

  7.7.1 寄存器尋址

  7.7.2 立即尋址

  7.7.3 內(nèi)存尋址

  本章習(xí)題

  第8章 硬盤和顯卡的訪問與控制

  8.1 本章代碼清單

  8.2 用戶程序的結(jié)構(gòu)

  8.2.1 分段、段的匯編地址和段內(nèi)匯編地址

  8.2.2 用戶程序頭部

  8.3 加載程序(器)的工作流程

  8.3.1 初始化和決定加載位置

  8.3.2 準(zhǔn)備加載用戶程序

  8.3.3 外圍設(shè)備及其接口

  8.3.4 I/O端口和端口訪問

  8.3.5 通過硬盤控制器端口讀扇區(qū)數(shù)據(jù)

  8.3.6 過程調(diào)用

  8.3.7 加載用戶程序

  8.3.8 用戶程序重定位

  8.3.9 將控制權(quán)交給用戶程序

  8.3.10 處理器的無條件轉(zhuǎn)移指令

  8.4 用戶程序的工作流程

  8.4.1 初始化段寄存器和棧切換

  8.4.2 調(diào)用字符串顯示例程

  8.4.3 過程的嵌套

  8.4.4 屏幕光標(biāo)控制

  8.4.5 取當(dāng)前光標(biāo)位置

  8.4.6 處理回車和換行字符

  8.4.7 顯示可打印字符

  8.4.8 滾動(dòng)屏幕內(nèi)容

  8.4.9 重置光標(biāo)

  8.4.10 切換到另一個(gè)代碼段中執(zhí)行

  8.4.11 訪問另一個(gè)數(shù)據(jù)段

  8.5 編譯和運(yùn)行程序并觀察結(jié)果

  本章習(xí)題

  第9章 中斷和動(dòng)態(tài)時(shí)鐘顯示

  9.1 外部硬件中斷

  9.1.1 非屏蔽中斷

  9.1.2 可屏蔽中斷

  9.1.3 實(shí)模式下的中斷向量表

  9.1.4 實(shí)時(shí)時(shí)鐘、CMOS RAM和BCD編碼

  9.1.5 代碼清單9-1

  9.1.6 初始化8259、RTC和中斷向量表

  9.1.7 使處理器進(jìn)入低功耗狀態(tài)

  9.1.8 實(shí)時(shí)時(shí)鐘中斷的處理過程

  9.1.9 代碼清單9-1的編譯和運(yùn)行

  9.2 內(nèi)部中斷

  9.3 軟中斷

  9.3.1 BIOS中斷

  9.3.2 代碼清單9-2

  9.3.3 從鍵盤讀字符并顯示

  9.3.4 代碼清單9-2的編譯和運(yùn)行

  本章習(xí)題

  ……

  第3部分 32位保護(hù)模式

  附錄1 本書用到的x86指令及其頁碼

  附錄2 本書用到的重要圖表及其頁碼

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1TC358743XBG評(píng)估板參考手冊(cè)
  2. 1.36 MB  |  330次下載  |  免費(fèi)
  3. 2開關(guān)電源基礎(chǔ)知識(shí)
  4. 5.73 MB  |  6次下載  |  免費(fèi)
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計(jì)
  8. 0.60 MB  |  3次下載  |  免費(fèi)
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費(fèi)
  11. 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
  12. 0.70 MB  |  2次下載  |  免費(fèi)
  13. 751單片機(jī)窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費(fèi)
  15. 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21548次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537796次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191185次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)