1.PSW标志位的功能
PSW在内存中的地址是D0H,各位的地址是D0H~D7H,它每一位的含义见表2-2。其中,位F0是给用户留着的,即是用F0给用户做记号的。RS1和RS0是规定工作寄存器的物理地址的(表2-3)。OV是溢出标志位,P是奇偶标志位等。
PSW的功能可以概括为三点:
1)只有在进行算术操作或其他某些逻辑运算的时候会影响到进位位和溢出位。换句话说,传送指令不会影响PSW的Cy、OV位;而字节的逻辑算术操作和位操作指令可以影响到进位位Cy、溢出位OV。
2)加法与减法时发生Cy置1的含义不同
①加法有进位时,意味着加法结果也超过8位数的范围,即大于255,大于FFH产生进位时,进位位就置1。
②减法的时候,当被减数小于减数,结果要小于0的时候就借位,也置1。
所以这两种情况下发生进位的含义是不一样的,加法的时候是进位,减法的时候是借位。一个是超过FFH,一个是小于0,就是小数去减大数,减出来的肯定是一个小于0的数。
3)指令操作结果使累加器里的内容超过了补码的表示范围-128~+127D时溢出,OV置1。
2.访问片外存储器时单片机引脚信号情况(www.xing528.com)
(1)MOVX A,@Ri指令执行时,在P3.7引脚上出现RD有效信号,作为片外数据存储器的读选通信号。P0先输出由Ri指定的8位地址信息然后输入该单元的内容,P0作分时复用的总线。
(2)MOVX @Ri,A 指令执行时,在P3.6引脚上出现WR有效信号,用作片外数据存储器的写选通信号。P0分时输出由Ri指定的8位地址信息及输出到该单元的数据。
以上两条可以访问片外数据存储器低256B的存储空间。
(3)MOVX @DPTR,A 指令执行时,P3.6引脚上输出有效信号,用作片外数据存储器的写选通信号。DPTR所包含的16位地址信息由P0(低8位)和P2(高8位)输出,累加器的内容由P0输出到该单元。P0作分时复用的总线。
(4)MOVX A,@DPTR 指令执行时,P3.7引脚上输出有效信号,用作片外数据存储器的读选通信号。DPTR所包含的16位地址信息由P0(低8位)和P2(高8位)输出,选中单元的数据由P0输入到累加器。
以上两条可以访问外部数据存储器间64KB的存储空间。
(5)MOVC A,@A+DPTR 指令执行时,引脚上输出有效信号,用作片外程序存储器的读选通信号。(DPTR+A)所包含的16位地址信息由P0(低8位)和P2(高8位)输出,选中单元的数据由P0输入到累加器。
(6)MOVC A,@A+PC 指令执行时,N引脚上输出有效信号,用作片外程序存储器的读选通信号。(PC当前值+A)所包含的16位地址信息由P0(低8位)和P2(高8位)输出,选中单元的数据经P0输入到累加器A。
以上两条MOVC是64KB存储空间内的查表指令,实现程序存储器到累加器的常数传送,每次传送一个字节。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。