常用寄存器及其说明
| 累加(Accumulator)寄存器 | AX(AH、AL) | 常用于乘、除法和函數(shù)返回值 | ||
| 基址(Base)寄存器 | BX(BH、BL) | 常做內(nèi)存數(shù)據(jù)的指針, 或者說常以它為基址來訪問內(nèi)存. | ||
| 計數(shù)器(Counter)寄存器 | CX(CH、CL) | 常做字符串和循環(huán)操作中的計數(shù)器 | ||
| 數(shù)據(jù)(Data)寄存器 | DX(DH、DL) | 常用于乘、除法和 I/O 指針 | ||
| 來源索引(Source Index)寄存器 | SI | 常做內(nèi)存數(shù)據(jù)指針和源字符串指針 | ||
| 目的索引(Destination Index)寄存器 | DI | 常做內(nèi)存數(shù)據(jù)指針和目的字符串指針 | ||
| 堆棧指針(Stack Point)寄存器 | SP | 只做堆棧的棧頂指針; 不能用于算術(shù)運(yùn)算與數(shù)據(jù)傳送 | ||
| 基址指針(Base Point)寄存器 | BP | 只做堆棧指針, 可以訪問堆棧內(nèi)任意地址, 經(jīng)常用于中轉(zhuǎn) ESP 中的數(shù)據(jù), 也常以它為基址來訪問堆棧; 不能用于算術(shù)運(yùn)算與數(shù)據(jù)傳送 | ||
| 指令指針(Instruction Pointer)寄存器 | 總是指向下一條指令的地址; 所有已執(zhí)行的指令都被它指向過. | |||
| 標(biāo)志(Flag)寄存器: | 0 | CF | 進(jìn)位(Carry)標(biāo)志 | 目標(biāo)無法容納無符號算術(shù)運(yùn)算的結(jié)果, 需要進(jìn)位或借位時被設(shè)置; 可用 STC 指令設(shè)置, CLC 指令取消. |
| 1 | ||||
| 2 | PF | 奇偶(Parity)標(biāo)志 | 低 8 位中有偶數(shù)個 1 時被設(shè)置 | |
| 3 | ||||
| 4 | AF | 輔助(Auxiliary)標(biāo)志 | 使用 BCD 碼運(yùn)算導(dǎo)致 3 位到 4 位產(chǎn)生進(jìn)位時被設(shè)置 | |
| 5 | ||||
| 6 | ZF | 零(Zero)標(biāo)志 | 運(yùn)算結(jié)果為 0 時被設(shè)置 | |
| 7 | SF | 符號(Sign)標(biāo)志 | 運(yùn)算結(jié)果為負(fù)數(shù)時被設(shè)置 | |
| 8 | ||||
| 9 | ||||
| 10 | DF | 方向(Direction)標(biāo)志 | 字符串操作是從高位到低位時被設(shè)置; 可用 STD 指令設(shè)置, CLD 指令取消. | |
| 11 | OF | 溢出(Overflow)標(biāo)志 | 因有符號運(yùn)算的結(jié)果太寬而導(dǎo)致數(shù)據(jù)丟失時被設(shè)置 | |
| ... | ||||
| 31 | ||||
總結(jié)
- 上一篇: python如何爬取sci论文中所需的数
- 下一篇: 运用数组,输出从小到大的10个数