• 回答数

    3

  • 浏览数

    277

zhijuan0628
首页 > 英语培训 > 标志寄存器英文

3个回答 默认排序
  • 默认排序
  • 按时间排序

rinpan2013

已采纳

1空间小2 方便使用3 密码锁安全4 语音识别技术5 自动检测危险物品

标志寄存器英文

229 评论(15)

快乐的精灵王

8086中共有4个16位的通用寄存器(AX、BX、CX、DX),4个16位的指针与变址寄存器(BP、SP、SI、DI),4个16位的段寄存器(CS、DS、SS、ES),一个指令指针寄存器(IP)及一个标志寄存器(PSW)。 AX BX CX DX是CPU内部的通用寄存器中的数据寄存器,数据寄存器一般用于存放参与运算的数据或运算的结果,每一个数据寄存器都是16位的(即16个二进制位),但又可以将高,低8位分别作为两个独立的8位寄存器使用.它们的高8位记作AH,BH,CH,DH,低8位记作AL,BL,CL,DL.这种灵活的使用方法给编程带来极大的方便,既可以处理16位数据,也能处理8位数据. 数据寄存器除了作为通用寄存器使用外,它们还有各自的习惯用法 AX 称为累加器,常用于存放算术逻辑运算中的操作数,另外所有的I/O指令都使用累加器与外设接口传送信息 BX 称为基址寄存器,常用来存放访问内在时的基地址, CX 称为计数寄存器,在循环和串操作指令中用作计数器 DX 称为数据寄存器,在寄存器间接寻址中的I/O指令中存放I/O端口的地址 另外,在做双字长乘除法运算时,DX 与AX合起来存放一个双字长数(32位),其中DX存放高16位,AX存放低16位. 1978年Intel公司推出16位微处理器8086。8086是一种具有代表性的处理器,后续推出的各种处理器均保持与之兼容。8086CPU采用HMOS工艺,片上集成2.9万个晶体管,引脚为双列直插式,有40个引脚,内外总线都为16位,是真正的16位CPU。其中有20位地址线,可直接寻址1M空间。 为了兼容市场上的8位微机,Intel公司又推出了8086的改进型8088处理器。它的内部总线为16位,外部总线为8位,地址线为20位,指令系统与8086系统兼容,是准16位机。 上图:8086CPU的内部结构框图(点击查看大图像) 从功能上划分,CPU内部可划分为总线接口单元BIU(Bus Interface Unit)与执行单元EU(Execution Unit): 总线接口单元BIU BIU负责CPU与存储器、外设之间的数据传送,包括存储器读写,I/O接口读写以及取指令。 BIU由段寄存器(CS、DS、SS、ES)、指令指针寄存器(IP)、地址加法器、内部寄存器、指令队列缓冲器及I/O控制逻辑等部分组成。 2. 指令执行单元部件EU EU负责指令执行,它由通用寄存器组、专用寄存器组、算术逻辑运算单元(ALU)、标志寄存器(FR)和内部控制逻辑组成。 从上可看出,BIU负责完成取指令与存取操作数,即CPU所有与外部总线有关的操作均由其完成。而EU则负责分析、执行指令,并不需与CPU外部总线直接发生联系,其所需的数据和所产生的结果都通过BIU接收或传送到外部总线。BIU与EU两个单元一起并行工作,使得取指令与执行指令的操作并行进行,从而大大提高了工作效率。 图中的8086中共有4个16位的通用寄存器(AX、BX、CX、DX),4个16位的指针与变址寄存器(BP、SP、SI、DI),4个16位的段寄存器(CS、DS、SS、ES),一个指令指针寄存器(IP)及一个标志寄存器(PSW)。 通 用 寄存器 15 - 8 7 - 0 累 加 器(AX) AH AL 基址寄存器(BX) BH BL 计 数 器(CX) CH CL 数据寄存器(DX) DH DL 指 针 和变址 寄存器 15 - 0 堆栈指示器(SP) SP 基址指示器(BP) BP 源 变址 器(SI) SI 目的变址器(DI) DI 控 制 寄存器 15 - 0 指令指示器(IP) IP 标志寄存器(FR) FR 段寄存器 15 - 0 代码段寄存器(CS) CS 数据段寄存器(DS) DS 堆栈段寄存器(SS) SS 附加段寄存器(ES) ES 注: 其中4个通用寄存器都可以拆成高8位与低8位两个寄存器来使用。 4个变址指针寄存器(SP、BP、SI、DI)中前两个称为“地址指针”,后两个称为“变址寄存器”。 通用寄存器的特殊用途和隐含性质 寄存器名 特殊用途 隐含性质 AX, AL 在输入输出指令中作数据寄存器用 不能隐含 在乘法指令中存放被乘数或乘积; 在除法指令中存放被除数或商 隐含 AH 在LAHF指令中,作目标寄存器用 隐含 AL 在十进制运算指令中作累加器用 隐含 在XLAT指令中作累加器用 隐含 BX 在间接寻址中作基址寄存器用 不能隐含 在XLAT指令中作基址寄存器用 隐含 CX 在串操作指令和LOOP指令中作计数器用 隐含 CL 在移位/循环移位指令中作移位次数计数器用 不能隐含 DX 在字乘法/除法指令中存放 乘积高位或被除数高位或余数 隐含 在间接寻址的输入输出指令中作地址寄存器用 不能隐含 SI 在字符串运算指令中作源变址寄存器用 隐含 在间接寻址中作变址寄存器用 不能隐含 DI 在字符串运算指令中作目标变址寄存器用 隐含 在间接寻址中作变址寄存器用 不能隐含 BP 在间接寻址中作基址指针用 不能隐含 SP 在堆栈操作中作堆栈指针用 隐含 注:EU中设计了一个16位的标志寄存器,用来存放程序状态字PSW(Program Status Word)。PSW中一共定义了9个有效位。 PSW的标志位 OF DF IF TF SF ZF AF PF CF 注:最左边的代表PSW的最高位,最右边(CF)的代表最低位。 PSW中标志位的用法及含义 标志位 用法及含义 DF 方向控制(Direction Flag)位 若设置DF=1,则串操作后,源和目的操作数的地址均向增址方向调整;若设置DF=0,则向减址方向调整。 IF 中断允许控制(Interrupt Enable Flag)位 若设置IF=1,则允许CPU响应可屏蔽中断(开中断);若IF=0,则不允许CPU响应可屏蔽中断(关中断)。 TF 陷井控制(Trap Flag)位 若设置TF=1,则将在CPU运行中设置陷井,此时,CPU每执行一条指令就产生一个单步中断,用户可以在中断服务中对当前指令的执行情况进行调试;若TF=0,表示不设置陷井。该标志主要用于程序的单步调试。 OF 溢出标志(Overflow Flag)位。它反映有符号数的运算结果是否超出其所能表示的范围;字运算的范围为-32768~+32767,字节运算的范围为-128~+127。若OF=1,则表示结果溢出;OF=0,表示结果未溢出。注意,OF标志主要针对有符号运算。 SF 符号标志(Sign Flag)位。它反映运算结果的最高有效位(MSB)为0、还是为1;对有符号运算来说,它反映了运算结果为正、还是为负。若SF=1,反映运算结果的最高有效位为1(或结果为负);若SF=0,则表示最高有效位为0(或结果不为负)。 ZF 零标志(Zero Flag)位。反映运算结果是否为全0。若ZF=1,则表示运算结果为全0(各位均为0);若ZF=0,表示运算结果非全0(各位不全为0)。 AF 辅助标志(Auxiliary Flag)位。该标志主要用于BCD码运算后的调整。它反映运算中低四位向前(即D3向D4)有无进位(针对加运算)或借位(针对减运算)。若AF=1,表示有进位或借位;若AF=0,表示无进位或借位。 PF 校验标志(Parity Flag)位。反映运算结果中1的个数是否为偶数。若PF=1,表示运算结果中有偶数个1;若PF=0,表示结果中有奇数个1。 CF 进位标志(Carry Flag)位。它反映运算中最高有效位(字运算时为D15、字节运算时为D7位)向前有无进位(针对加运算)或借位(针对减运算)。若CF=1,表示有进位或借位;若CF=0,表示无进位或借位。CF标志主要针对无符号运算。 注:DF、 IF、 TF为控制标志位,用户可以通过指令设置它们为0或1。从而控制CPU的状态。OF、SF、 ZF、 AF、 PF、CF 为状态标志位,它们记录程序的运行状态,通过对它们的判断决定程序

95 评论(8)

高@设计师

OF(ov/nv):Over 溢出 标志位 DF(dn/up):Direction 方向 标志位IF(ei/di):Enable 允许中断 标志位SF(ng/pl):Symbol 符号 标志位ZF(zr/nz):Zero 零 标志位AF(ac/na):Auxiliary 辅助进位 标志位PF(pe/po):Parity 奇偶 标志位CF(cy/nc):Carry 进位 标志位 溢出 OV(溢出) NV(未溢出)零位 ZF(等于零) NZ(不等于零)方向 DN(减少) UP(增加)辅助进位 AC(进位) NA(无进位)中断 EI(许可) DI(禁止)奇偶标志 PE(偶) PO(奇)符号 NG(负) PL(正)进位 CY(进位) NC(无进位)

247 评论(10)

相关问答