資料介紹
《x86匯編語言:從實模式到保護模式》主要講述INTEL x86處理器的16位實模式、32位保護模式,至于虛擬8086模式,則是為了兼容傳統的8086程序,現在看來已經完全過時,不再進行講述。《x86匯編語言:從實模式到保護模式》的特色之一是提供了大量典型的源代碼,這些代碼以及相配套的工具程序可以到書中指定的網站,或者電子工業出版社華信教育資源網搜索下載。
每一種處理器都有它自己的機器指令集,而匯編語言的發明則是為了方便這些機器指令的記憶和書寫。盡管匯編語言已經較少用于大型軟件程序的開發,但從學習者的角度來看,要想真正理解計算機的工作原理,掌握它內部的運行機制,學習匯編語言是必不可少的。本書采用開源的NASM匯編語言編譯器和VirtualBox虛擬機軟件,以個人計算機廣泛采用的Intel處理器為基礎,詳細講解了Intel處理器的指令系統和工作模式,以大量的代碼演示了16/32/64位軟件的開發方法,介紹了處理器的16位實模式和32位保護模式,以及基本的指令系統。這是一本有趣的書,它沒有把篇幅花在計算一些枯燥的數學題上。相反,它教你如何直接控制硬件,在不借助于BIOS、DOS、Windows、Linux或者任何其他軟件支持的情況下來顯示字符、讀取硬盤數據、控制其他硬件等。本書可作為大專院校相關專業學生和計算機編程愛好者的教程。
第1章 十六進制計數法
1.1 二進制計數法回顧
1.1.1 關于二進制計數法
1.1.2 二進制到十進制的轉換
1.1.3 十進制到二進制的轉換
1.2 十六進制計數法
1.2.1 十六進制計數法的原理
1.2.2 十六進制到十進制的轉換
1.2.3 十進制到十六進制的轉換
1.3 為什么需要十六進制
本章習題
第2章 處理器、內存和指令
2.1 最早的處理器
2.2 寄存器和算術邏輯部件
2.3 內存儲器
2.4 指令和指令集
2.5 古老的Intel 8086處理器
2.5.18086的通用寄存器
2.5.2 程序的重定位難題
2.5.3 內存分段機制
2.5.48086的內存分段機制
本章習題
第3章 匯編語言和匯編軟件
3.1 匯編語言簡介
3.2 NASM編譯器
3.2.1 NASM的下載和安裝
3.2.2 代碼的書寫和編譯過程
3.2.3 用HexView觀察編譯后的機器代碼
本章習題
第4章 虛擬機的安裝和使用
4.1 計算機的啟動過程
4.1.1 如何將編譯好的程序提交給處理器
4.1.2 計算機的加電和復位
4.1.3 基本輸入輸出系統
4.1.4 硬盤及其工作原理
4.1.5 一切從主引導扇區開始
4.2 創建和使用虛擬機
4.2.1 別害怕,虛擬機是軟件
4.2.2 下載和安裝Oracle VM VirtualBox
4.2.3 虛擬硬盤簡介
4.2.4 練習使用FixVhdWr工具向虛擬硬盤寫數據
第2部分 實模式
第5章 編寫主引導扇區代碼
5.1 本章代碼清單
5.2 歡迎來到主引導扇區
5.3 注釋
5.4 在屏幕上顯示文字
5.4.1 顯卡和顯存
5.4.2 初始化段寄存器
5.4.3 顯存的訪問和ASCII代碼
5.4.4 顯示字符
5.4.5 MOV指令的格式
5.5 顯示標號的匯編地址
5.5.1 標號
5.5.2 如何顯示十進制數字
5.5.3 在程序中聲明并初始化數據
5.5.4 分解數的各個數位
5.5.5 顯示分解出來的各個數位
5.5 使程序進入無限循環狀態
5.7 完成并編譯主引導扇區代碼
5.7.1 主引導扇區有效標志
5.7.2 代碼的保存和編譯
5.8 加載和運行主引導扇區代碼
5.8.1 把編譯后的指令寫入主引導扇區
5.8.2 啟動虛擬機觀察運行結果
5.9 程序的調試技術
5.9.1 開源的Bochs虛擬機軟件
5.9.2 Bochs下的程序調試入門
本章習題
第6章 相同的功能,不同的代碼
6.1 代碼清單6-1
6.2 跳過非指令的數據區
6.3 在數據聲明中使用字面值
6.4 段地址的初始化
6.5 段之間的批量數據傳送
6.6 使用循環分解數位
6.7 計算機中的負數
6.7.1 無符號數和有符號數
6.7.2 處理器視角中的數據類型
6.8 數位的顯示
6.9 其他標志位和條件轉移指令
6.9.1 奇偶標志位PF
6.9.2 進位標志CF
6.9.3 溢出標志OF
6.9.4 現有指令對標志位的影響
6.9.5 條件轉移指令
6.10 NASM編譯器的$和$$標記
6.11 觀察運行結果
6.12 本章程序的調試
6.12.1 調試命令“n”的使用
6.12.2 調試命令“u”的使用
6.12.3 用調試命令“info”察看標志位
本章習題
第7章 比高斯更快的計算
7.1 從1加到100的故事
7.2 代碼清單7-1
7.3 顯示字符串
7.4 計算1到100的累加和
7.5 累加和各個數位的分解與顯示
7.5.1 棧和棧段的初始化
7.5.2 分解各個數位并壓棧
7.5.3 出棧并顯示各個數位
7.5.4 進一步認識堆棧
7.6 程序的編譯和運行
7.6.1 觀察程序的運行結果
7.6.2 在調試過程中察看棧中內容
7.78086處理器的尋址方式
7.7.1 寄存器尋址
7.7.2 立即尋址
7.7.3 內存尋址
本章習題
第8章 硬盤和顯卡的訪問與控制
8.1 本章代碼清單
8.2 用戶程序的結構
8.2.1 分段、段的匯編地址和段內匯編地址
8.2.2 用戶程序頭部
8.3 加載程序(器)的工作流程
8.3.1 初始化和決定加載位置
8.3.2 準備加載用戶程序
8.3.3 外圍設備及其接口
8.3.4 I/O端口和端口訪問
8.3.5 通過硬盤控制器端口讀扇區數據
8.3.6 過程調用
8.3.7 加載用戶程序
8.3.8 用戶程序重定位
8.3.9 將控制權交給用戶程序
8.3.10 處理器的無條件轉移指令
8.4 用戶程序的工作流程
8.4.1 初始化段寄存器和棧切換
8.4.2 調用字符串顯示例程
8.4.3 過程的嵌套
8.4.4 屏幕光標控制
8.4.5 取當前光標位置
8.4.6 處理回車和換行字符
8.4.7 顯示可打印字符
8.4.8 滾動屏幕內容
8.4.9 重置光標
8.4.10 切換到另一個代碼段中執行
8.4.11 訪問另一個數據段
8.5 編譯和運行程序并觀察結果
本章習題
第9章 中斷和動態時鐘顯示
9.1 外部硬件中斷
9.1.1 非屏蔽中斷
9.1.2 可屏蔽中斷
9.1.3 實模式下的中斷向量表
9.1.5 代碼清單9-1
9.1.6 初始化8259、RTC和中斷向量表
9.1.7 使處理器進入低功耗狀態
9.1.8 實時時鐘中斷的處理過程
9.1.9 代碼清單9-1的編譯和運行
9.2 內部中斷
9.3 軟中斷
9.3.1 BIOS中斷
9.3.2 代碼清單9-2
9.3.3 從鍵盤讀字符并顯示
9.3.4 代碼清單9-2的編譯和運行
本章習題
……
第3部分 32位保護模式
附錄1 本書用到的x86指令及其頁碼
附錄2 本書用到的重要圖表及其頁碼
- 現代無線電實驗的PDF電子書免費下載 250次下載
- 半導體收音機淺談的PDF電子書免費下載 162次下載
- 光學諧振腔的圖解分析與設計方法的PDF電子書免費下載 123次下載
- MATLAB函數速查手冊PDF電子書免費下載 148次下載
- 電子管數據手冊合集PDF電子書免費下載 72次下載
- x86匯編語言從實模式到保護模式的電子教程免費下載 29次下載
- 匯編語言編程藝術PDF電子書免費下載 5次下載
- 高級語言程序設計從菜鳥到大師深入C語言程序設計PDF電子書免費下載 166次下載
- 51單片機設計電子琴的匯編語言資料免費下載
- 電冰箱快速維修PDF電子書免費下載 43次下載
- 家電維修1128例PDF電子書免費下載 186次下載
- STM8 C語言精品編程100例PDF版電子書免費下載 0次下載
- 數字信號處理算法C語言實現PDF版電子書免費下載 0次下載
- 匯編語言學習課件_保護模式及其應用 0次下載
- 匯編語言編程藝術(PDF) 0次下載
- 匯編語言結構與8086概述 2523次閱讀
- 匯編語言的變量與編碼是什么 1453次閱讀
- 源創通信SinoV-AP1000 X86架構介紹 1881次閱讀
- 單片機 | 基礎匯編語言編程實例 9876次閱讀
- 醫療設備逐漸從X86轉到ARM平臺主要原因是什么 4302次閱讀
- 單片機閃爍燈匯編語言源代碼大全(四款閃爍燈的匯編語言源代碼) 2.5w次閱讀
- 單片機流水燈匯編語言源代碼大全(六款流水燈匯編語言源代碼) 5.4w次閱讀
- 高級語言和匯編語言_機器語言的區別 3w次閱讀
- 如何在DOS實模式下直接訪問整個4GB內存空間 2188次閱讀
- C語言與匯編語言相互結合的嵌套匯編語言 3419次閱讀
- 跑馬燈實驗用匯編語言和C51語言做出的不同效果 3714次閱讀
- 學習ARM + Linux之前要講解用ADS或RealViewMDK去調試ARM開發板的原因 5810次閱讀
- x86 cpu詳細介紹 x86 cpu遵循原則與生產廠家 3431次閱讀
- 單片機編程之匯編語言基礎-常用指令和程序模式 1.5w次閱讀
- 匯編語言的結構化設計及其在俄羅斯方塊中的應用 2934次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多