测试数据寄存器怎么写( 二 )


TF:跟踪标志TF 。该标志可用于程序调试 。
TF 标志没有专门的指令来设置或清楚 。(1)如果 TF=1,则 CPU 处于单步执行指令的工作方式,此时每执行完一条指令,就显示CPU 内各个寄存器的当前值及CPU 将要执行的下一条指令 。
(2)如果 TF=0,则处于连续工作模式 。SF:符号标志SF 用来反映运算结果的符号位,它与运算结果的最高位相同 。
在微机系统中,有符号数采用补码表示法,所以,SF 也就反映运算结果的正负号 。运算结果为正数时,SF 的值为0,否则其值为 1 。
当运算结果没有产生溢出时,运算结果等于逻辑结果(即因该得到的正确的结果),此时SF 表示的是逻辑结果的正负,当运算结果产生溢出时,运算结果不等于逻辑结果,此时的SF 值所表示的正负情况与逻辑结果相反,即:SF=0 时,逻辑结果为负,SF=1 时,逻辑结果为正 。ZF:零标志ZF 用来反映运算结果是否为0 。
如果运算结果为0,则其值为1,否则其值为0 。在判断运算结果是否为0 时,可使用此标志位 。
AF:下列情况下,辅助进位标志AF 的值被置为 1,否则其值为 0:(1)、在字操作时,发生低字节向高字节进位或借位时;(2)、在字节操作时,发生低4 位向高4 位进位或借位时 。PF:奇偶标志PF 用于反映运算结果中"1"的个数的奇偶性 。
如果"1"的个数为偶数,则PF 的值为1,否则其值为0 。CF:进位标志CF 主要用来反映运算是否产生进位或借位 。
如果运算结果的最高位产生了一个进位或借位,那么,其值为1,否则其值为0 。(4)段寄存器(Segment Register)为了运用所有的内存空间,8086 设定了四个段寄存器,专门用来保存段地址:CS(Code Segment):代码段寄存器;DS(Data Segment):数据段寄存器;SS(Stack Segment):堆栈段寄存器;ES(Extra Segment):附加段寄存器 。
当一个程序要执行时,就要决定程序代码、数据和堆栈各要用到内存的哪些位置,通过设定段寄存器 。
3.数据寄存器D简单易懂的解释你炒菜时,当你的CPU处理器(炒菜的锅)需要葱姜蒜等数据时,如果没有寄存器(切菜板),那么就必须单独走IO通道,去存储外设(放姜的袋子、放葱的袋子、放蒜的袋子)查找你要的这些数据,而且每次你只能去取其中一个进行处理(切片剁末放入炒锅) 。
现在有了寄存器(切菜板),你就可以在还没有执行到需要葱姜蒜这一步数据时,预先将这些数据处理好(切片剁末放在切菜板上),到了CPU需要这些数据时,直接从寄存器(切菜板)中取出你要的某一样数据即可 。
同样,你炒的半成品菜(临时计算结果)也可以存入寄存器(切菜板)上,到下次需要时从其中取出即可
4.数据寄存器究竟是哪些数据寄存器
1数据寄存器
AX、BX、CX、DX可以称为数据寄存器,用来暂时存放计算过程中所用到的操作数、结果和信息 。这4个16位寄存器又可分别分成高8位(AH、BH、CH、DH)和低8位(AL、BL、CL、DL) 。因此它们既可作为4个16位数据寄存器使用,也可作为8个8位数据寄存器使用,在编程时可存放源操作数、目的操作数或运算结果 。数据寄存器是存放操作数、运算结果和运算的中间结果,以减少访问存储器的次数,或者存放从存储器读取的数据以及写入存储器的数据的寄存器 。
2分类
AX(accumulator)累加器 。作为累加器使用 。是算术运算的主要寄存器 。在乘、除等指令中指定用来存放操作数 。以及所有的 I/O指令都使用这一寄存器与外部设备传送信息 。
BX(base)基址 。可以作为通用寄存器使用 。此外在计算机存储地址时,它经常用作基址寄存器 。