学习汇编图文. 寄存器的特殊用法
32位 X86處理器
操作模式
1.保護模式
處理器的原生狀態.所有的指令和特征都是可用的.分配給程序獨立內存區域被稱為段,處理器會阻止程序使用自身段范圍之外的內存
2.實地址模式
程序需要直接訪問系統內存和硬件設備
3.系統管理模式
向操作系統提供實現諸如電源管理和系統安全等功能的機制
4.虛擬8086模式
程序崩潰了或者向系統內存區域寫數據,不會影響同一個時間內執行的其他程序
寄存器
寄存器的特殊用法
乘除指令默認使用EAX. 常被稱為 拓展累加器
Cpu默認使用ECX位循環計數器
ESP用于尋址堆棧,常稱為 拓展堆棧指針寄存器
ESI EDI用于高速存儲器傳輸指令.常稱為 拓展原變址與拓展目的變址
EBP 引用堆棧中的函數參數和局部變量常稱為 拓展堆棧指針寄存器
EIP寄存器中包含下一條執行指令的地址
EFLAGS寄存器 包含 獨立的二進制位,控制Cpu的操作
CF(進位標志位) 無符號算術運算結果太大了.設置該標志位
OF(溢出標志位) 有符號算術運算結果太大或者太小,設置該標志位
SF(符號標志位) 算術或邏輯產生負結果,設置該標志位
ZF(符號標志位)算術或邏輯產生0時,設置該標志位
PF(奇偶校驗標志位) 包含偶數個1時,值為1.如果數據有可能被修改或損壞時,該標志為用于進行錯誤檢測
AC(輔助進位標志位)算術操作在8位操作數中產生了位3向位4的進位時,設置該標志位
通用寄存器主要用于 算術運算,數據傳輸和邏輯操作
段寄存器存放預先分配的內存區域的基址
偽指令不在運行時執行.用來定義變量,宏和子程序
例子1:
myVar DWORD 26
mov eax,myVar
.code 偽指令標識的程序區段包含了可執行的指令.
.stack 偽指令標識的程序區段定義了運行時堆棧,并設置其大小
總結
以上是生活随笔為你收集整理的学习汇编图文. 寄存器的特殊用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 汇编的基础(2)
- 下一篇: C语言 指针 类型的用法大汇总(指针/引