首页 > 编程知识 正文

旅游logo标志(旅游标志标牌设计)

时间:2023-05-06 03:46:28 阅读:73958 作者:4702

徽标介绍:

标志寄存器也被称为程序状态寄存器,其内容是Program Status Word,PSW。 这是存储条件代码标志、控制标志、系统标志的寄存器。

6个状态标志位

CF—进位标志,加法时的最高位(D7或D15 )进位或减法时的最高位发生借位时,CF=1,否则CF=0;

af—BCD码的进位辅助标志。 D3位有进位或借位时AF=1,否则AF=0;

OF—溢出标志,有符号数算术运算时,结果超过8位或16位显示范围,发生溢出时OF=1,否则OF=0;

ZF—零标志,如果运算结果的各位为零则ZF=1,否则ZF=0;

SF -符号标志,运算结果为负数时,即运算结果的最高位为1时SF=1,否则SF=0;

PF—奇偶校验标志反映操作结果中“1”的个数情况,如果有偶数个“1”,则PF=1,否则PF=0。

三个控制标志

DF—控制数据列操作命令步进方向的方向标志;

如果设置为DF=1,则按降序处理数据列中的数据。 如果设置DF=0,则递增。

IF—中断允许标志,设置IF=1打开中断后,CPU可以响应可屏蔽的中断请求; 如果设定IF=0,则中断关闭,CPU不对可屏蔽的中断请求进行响应。

TF—陷阱标志。 已设置用于程序调试。 如果设定TF=1,则CPU变为1步执行指令的方式。 如果设定TF=0,则CPU正常执行程序。

详细说明:

1、进位标志cf (载波标志) )。

运算结果的最高位有进位(加法)或借位)时,进位标志设置为1,

即CF=1; 否则CF=0。

49H 6DH=B6H,无进位: CF=0

BH6ah=(1) 25H,有进位: CF=1

2、零标记ZF(zeroflag )。

运算结果为0时,ZF=1; 否则ZF=0

49H 6DH=B6H,结果不为零: ZF=0

75h8BH=(1) 00H,结果为零: ZF=1

3、符号标志SF (信号标志) )

如果运算结果最高位比特为1,则SF=1; 否则科幻=0

49H 6DH=B6H=10110110B,SF=1

4、奇偶标志Pf (奇偶标志)。

运算结果最低字节中的"1"的个数为零或偶数时,PF=1; 否则PF=0

3AH 7CH=B6H=10110110B的结果有5个1,奇数: PF=0

5、溢出标志of (溢出标志)。

算术运算结果有溢出时,OF=1; 否则OF=0

49H 6DH=B6H,发生溢出: OF=1

75h8BH=(1) 26H,无溢出: OF=0

溢出是什么?

用补数表示处理器内部带符号的8位表示的整数范围是127~-128

16位表示的范围为32767~-32768

运算结果超过该范围时,会发生溢出,发生溢出。 表示有符号数的运算结果不正确。 49H 6DH=B6H为73 109=182,溢出范围超过-128~ 127,因此OF=1。

另外一方面,补数B6H表现真值为-74,显然运算结果也不正确

溢出标志OF和进位标志CF是意义不同的两个标志

进位标志表示无符号数运算结果是否在范围外,运算结果仍然正确;

溢出标志表示符号数的运算结果是否在范围外、运用

算结果已经不正确。

例1:49H +6DH=B6H无符号数运算:

73+109=182范围内,

无进位有符号数运算:73+109=182范围外,有溢出

例2:BBH +6AH=(1)25H无符号数运算:

187+106=293范围外,

有进位有符号数运算:-69+106=37范围内,无溢出

溢出的判断判断运算结果是否溢出有一个简单的规则:

只有当两个相同符号数相加(包括不同符号数相减),而运算结果的符号与原数据符号相反时,产生溢出;因为,此时的运算结果显然不正确其他情况下,则不会产生溢出

1.当两个符号相同的数相加,结果的符号与之相反,则OF=1,否则OF=0.

2.当两个符号不同的数相减,结果的符号与减数相同,则OF=1,否则OF=0.

6、辅助进位标志AF(Auxiliary Flag)
运算时D3位(低半字节)有进位或借位时,AF = 1;否则AF = 0。

49H + 6DH=B6H,D3有进位:AF = 1
100 1001B+110 1101B=1011 0110B

 

 

7、方向标志DF(Direction Flag)
用于串操作指令中,控制地址的变化方向:设置DF=0,存储器地址自动增加;

设置DF=1,存储器地址自动减少。

CLD指令复位方向标志:DF=0

STD指令置位方向标志:DF=1

 

8、中断允许标志IF(Interrupt Flag)
用于控制外部可屏蔽中断是否可以被处理器响应:

设置IF=1,则允许中断;

设置IF=0,则禁止中断。

CLI指令复位中断标志:IF=0

STI指令置位中断标志:IF=1

 

9、陷阱标志TF(Trap Flag)
用于控制处理器进入单步操作方式:

设置TF=0,处理器正常工作;

设置TF=1,处理器单步执行指令。

单步执行指令——处理器在每条指令执行结束时,便产生一个编号为1的内部中断这种内部中断称为单步中断所以TF也称为单步标志利用单步中断可对程序进行逐条指令的调试这种逐条指令调试程序的方法就是单步调试
EU控制器是执行指令的控制电路,实现从队列中取指令、译码、产生控制信号等。,


在(cmd debug)调试程序中为了使标志位的值显尔易见,他提供用符号表示标志位的值。

标志

值为1

值为0

OF

OV

NV

DF

DN

UP

IF

EI

DI

SF

NG

PL

ZF

ZR

NZ

AF

AC

NA

PF

PE

PO

CF

CY

NC



 











cmp指令
 cmp ax,bx
 如果(ax)=(bx), 则 zf=1
 如果(ax)!=(bx), 则 zf=0
 如果(ax)<(bx), 则 cf=1
 如果(ax)>=(bx),则 cf=0
 如果(ax)>(bx), 则 cf=0且zf=0
 如果(ax)<=(bx),则 cf=1或zf=1
cmp指令配合和条件转移指令配合使用
 条件转移指令

指令

含义

检测的相关标志位

je

等于则转移

zf=1

jne

不等于则转移

zf=0

jb

小于则转移

cf=1

jnb

不小于则转移

cf=0

ja

大于则转移

cf=0且zf=0

jna

不大于则转移

cf=1且zf=1



 DF标志和串传送指令
 DF 方向标志位,在串处理指令中,控制每次操作后si、di的增减
 df=0 每次操作后si、di递增
 df=1 每次操作后si、di递减
 movsb:
 相当于
 mov es:[di],byte ptr ds:[si]
 如果 df=0
 inc di
 inc si
 如果 df=1
 dec di
 dec si
 movsw:
 相当于
 mov es:[di],word ptr ds:[si]
 如果 df=0
 add si,2
 add di,2
 如果 df=1
 sub si,2
 sub di,2
 一般来说,movsb和movsw都和rep配合使用,格式如下:
 rep movsb
 或者
 rep movsw
 相当于
 s:movsb
 loop s
 rep的作用是根据cx的值,重复执行rep后面的串传送指令

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。