全站数据
8 4 2 0 5 8 1

描述PSW程序状态字每位的位意义

成考函授报名 | 简单学习,快乐成才!         
问题更新日期:2024-10-11 09:32:20

问题描述

描述PSW程序状态字每位的位意义求高手给解答
精选答案
最佳答案

对于SP来说,除了置初值的movsp,#xxh(XX为具体的十六进制数,应该注意范围在7FH之前)之外,还有pushdirect(字节地址),popdirect,执行PUSH指令时,SP的值+1,此时direct的内容压入SP所指向的地址如设sp初值5fh,执行push40h,则sp的值将变成60h,60h中将存放40h中的内容.pop刚好相反,先将存于堆栈的内容取出放到目的地址,再将sp的值-1.PSW为程序状态字寄存器,主要描述程序执行时各个标志位的状态,主要包括:cyacfrs1rs0ov-p其中影响到cyacovp的操作一般为算术运算,就是加减乘除还有BCD码调整,其中加减法对四个标志位都有影响,乘除法一直都把CY置0,影响ov和p,rs1rs0用来决定当前工作的寄存器组.二进制和十六进制的减法没有什么特别的方法,如果你十进制会算,这两个应该也会算.....结果为负数时,在计算机内以补码形式存储.如-1在计算机中的存储的值为FFH,不管进行带符号数还是无符号数,计算机内部均采用二进制码计算,但计算过程中,要通过判定PSW的值来决定结果是否真实有效,以56h-f8h为例.化成二进制的话01010110-11111000次高位无借位而最高位有借位,所以OV为1,产生溢出~

其他回答

位 7: CY:进位标志。

当最后一次算术操作产生进位(加法)或借位(减法)时,该位置 1。其它算 术操作将其清 0。位 6: AC:辅助进位标志。当最后一次算术操作向高半字节有进位(加法)或借位(减法)时,该位置 1。其它算术操作将其清 0。位 5: F0:用户标志 0。这是一个可位寻址、受软件控制的通用标志位。位 4-3: RS1-RS0:寄存器区选择。该两位在寄存器访问时用于选择寄存器区。RS1 RS0 寄存器区 地址 0 0 0 0x00-0x07 0 1 1 0x08-0x0F 1 0 2 0x10-0x17 1 1 3 0x18-0x1F 位 2: OV:溢出标志。该位在下列情况下被置1: y ADD、ADDC 或SUBB 指令引起符号位变化溢出。y MUL指令引起溢出(结果大于 255) 。y DIV 指令的除数为 0。ADD、ADDC、SUBB、MUL和 DIV 指令的其它情况使该位清 0。位 1: F1:用户标志 1。这是一个可位寻址、受软件控制的通用标志位。位 0: PARITY:奇偶标志。若累加器中8 个位的和为奇数时该位置 1,为偶数时清 0