问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么叫做单片机中的“溢出标志”?

发布网友 发布时间:2022-04-25 13:39

我来回答

5个回答

热心网友 时间:2023-10-03 05:26

0V——溢出标志,对于单字节的有符号数,若用最高位(b7)表示正、负号,则只有7位有效数位(b6~b0),能表示-128~+127之间的数。

运算结果超出了这个数值范围,就会发生溢出,此时0V=1,否则0V=0。此外,在执行乘法指令时,0V=1表示乘积超过255;在执行除法指令时,0V=1表示除数为0。



扩展资料

定时器中断由单片机中的定时器溢出而申请的中断。51单片机中有两个定时器T0和T1:TF0:定时器T0溢出中断请求。当定时器TO产生溢出时,TO中断请求标志TF0置1,请求中断处理。TF1:定时器T1溢出中断请求。当定时器Tl产生溢出时,T1中断请求标志TF1置1,请求中断处理。

F0,用户标志位:该位可由用户置1或清0,用于实现某些测控功能。 

AC,半进位标志位:当CPU进行加法(或减法)运算时,如果低半字节(b3~b0)向高半字节(b7~b4)有进位(或借位),即b3向b4进位(或借位)时,AC置1,否则清0。AC可用于BCD码加法时的调整判别位。

CY,进位标志位: 当CPU进行加法(或减法)运算时,如果运算结果的最高位(b7)有进位(或借位),CY则置1,否则清0。

参考资料来源:百度百科-定时器中断

参考资料来源:百度百科-PSW

热心网友 时间:2023-10-03 05:27

首先,要知道,什么是溢出?

一般来说,容器太小,盛不下了,就会溢出。

在计算机方面,溢出,就是数据太大,超出了预定的范围。

数字,在计算机中,都是用机器码代表的。

人们最常用的“自然数”和“整数”,其表达范围如下:

机器码,无论代表什么数字,只要运算结果超出预定范围,就是【溢出】。

但是,在计算机专业人的嘴里,就不一样了。

 【无符号数的溢出】,不叫溢出,要叫做【进位】。

 【带符号数的溢出】,才叫做【溢出】。

搞计算机的这些人,基本概念不清,却自命不凡!

冒充脑回路清奇。。。正常人对此,就只能无语了。

---------------------------

那么,就按照计算机专业的说法吧:

  溢出,是指“补码运算结果超出范围”。

  溢出的特征,是“符号错误”。

知道了这些,判断是否溢出,就很容易了。

CPU 每次做完运算,就会给出结果和“进位标志位 CY”和“溢出标志位 OV”。

如果 OV=1,就代表:刚刚做的计算,发生了溢出。

人工判断是否溢出,有如下六个方法。

一、无符号数的运算,肯定不会溢出。只有进位。

二、只有:正+正、负+负,才有可能超出范围。不是这些,就绝不会溢出。

三、人工用十进制数值计算。和,如果没有超出范围,就没有溢出。

四、人工用二进制补码计算。和的符号,如果正确,就没有溢出。

五、编个程序,让计算机计算。然后观察溢出标志位,为零,就没有溢出。

六、人工用补码计算,如“最高位的进位”和“次高位的进位”相同,就没有溢出。

第六种,本是 CPU 的硬件所用的方法。

硬件,其理论基础,是很晦涩难懂的。

异或运算,一般也不需要初学者掌握。

但是,一些爱得瑟的老师,偏爱介绍这种方法。

却又拿不出任何的理论!

其实,这是很无聊的表现,就是想着难为学生。

热心网友 时间:2023-10-03 05:27

明确: 溢出是针对有符号数来说的,无符号数没有溢出问题
注意: 处理器内部以补码表示有符号数,8位表达的整数范围是:+127~-128,16位表达的范围是:+32767~-32768
定义: 如果运算结果超出能够表达的数据范围,就产生了溢出
结论: 有溢出,说明有符号数的运算结果不正确
标志: OF溢出标志(Overflow Flag)。若算术运算的结果有溢出,则OF=1;否则OF=0。
示例: 3AH+7CH=B6H,就是58+124=182,这个8位运算的结果已经超出-128~+127范围,产生溢出,故OF=1。另一方面,补码B6H表达真值是-74,显然运算结果也不正确。
区别: 溢出标志OF和进位标志CF是两个意义不同的标志。进位标志表示的是无符号数运算结果是否超出范围,但运算结果仍然正确;而溢出标志表示的是有符号数运算结果是否超出范围,运算结果已经不正确。用8个二进制位表达无符号数整数的范围是:0~+255;16位表达的范围是:0~+65535。
对比: 3AH+7CH=B6H,无符号数运算:58+124=182,范围内,无进位;有符号数运算:58+124=182,范围外,有溢出。
AAH+7CH=(1)26H,无符号数运算:170+124=294, 范围外,有进位;有符号数运算:-86+124=38,范围内,无溢出。
处理: 处理器对两个操作数进行运算时,按照无符号数求得结果,并相应设置进位标志CF;同时,根据是否超出有符号数的范围设置溢出标志OF。应该利用哪个标志,则由程序员来决定。也就是说,如果将参加运算的操作数认为是无符号数,就应该关心进位;认为是有符号数,则要注意是否溢出。
判断: 计算机中利用最高位和次高位都有进位判断有溢出。我们可以利用一个简单的规则:只有当两个相同符号数相加(含两个不同符号数相减),而运算结果的符号与原数据符号相反时,产生溢出(因为,此时的运算结果显然不正确);其他情况下,则不会产生溢出。

热心网友 时间:2023-10-03 05:28

就是定时器/计数器T0,T1定时或计数满时就会发生溢出,就像盆里水满了你再往里面放水肯定会溢出啊,比如定时器工作在方式1时,计数满65536后,再次计数就溢出,从0重新开始计数,只不过单片机此时会置位TF0/TF1,以供编程者查询使用并作相应中断服务子程序,

热心网友 时间:2023-10-03 05:29

溢出就是定时器的值到达最大范围了,例如16位定时器最大值65536,当定时器由0运行到65536即溢出了,再也装不下了,此时再加没任何意义,一般溢出时单片机就会将对应定时器的溢出标志至1,然后触发中断,告诉你需要定时的时间到了需要处理
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...啊?我从嘴里吐出去是直的算过肺了吗?我不会从鼻子里出去_百度... 恶心呕吐是什么? 高考数学大题应注意哪些问题呢? 高考数学可不可以用高等数学啊 高考数学 基础知识点 常见考查方式 高考数学考什么内容 一般纳税人如何交所得税 以前的QQ忘记密码了那时候不要了就不找回密码了,现在想找回来,但是又没... 常州机场坐飞机流程 常州机场大巴时刻表 ...我早上九点起飞的飞机, 然后我这的机场快线大巴到机场时70分钟,_百 ... 中国平安考证怎么考试的 怎么在网上测试中国平安保险考试 成为以为平安保险里的一员考试需考些什么 平安保险公司实力究竟如何?她们公司的万能产品又如何呢? 如今的手机卡哪个比较合算? 平安保险考试问题 平安保险(万能型)可信不? 平安保险考试难吗,从前从来没有接触过 平安保险的资格考试是什么? 平安保险考试怎么考 懂平安保险万能型的专业人士请进! 平安保险代理人考试模拟题 谁帮忙来做平安保险的万能保险考试呀! 平安保险万能知识考试什么叫万能险 QQ怎么一个星星月亮都没有了? QQ上的星星月亮怎么忽然没有了 QQ里太阳,月亮,星星各代表多少级啊? QQ小图案上显示的月亮和星星是什么意思? qq中的太阳,星星,月亮分别代表什么 QQ上的星星和月亮是什么意思啊? 什么是单片机定时/计数器的溢出 51单片机的溢出问题 51单片机的溢出率什么意思 单片机溢出问题 单片机数据类型溢出? 51单片机计时器溢出后是不是就自动重新从零开始计时了? 51单片机的溢出 单片机中,定时器溢出是什么意思啊 单片机 计数器溢出 单片机程序状态字PSW的OV位到底是怎么判断溢出的?有CY位不就够了么... 关于单片机OV溢出的问题 单片机中的溢出标志位 ov请详细解释一下??在线等。 单片机定时器溢出中断是什么意思,单片机定时器中断为什么还要向数据寄存器重装初始值 51单片机的问题,关于进位与溢出 单片机中乘法指令溢出 关于单片机定时器溢出值的设定 最近睡觉发现自己会无意识的哼哼是什么原因? 睡觉时为什么会突然哼一下 我睡觉老爱哼哼唧唧的,是怎么回事? 晚上睡觉哼哼是怎么回事