c语言32位数如何判断溢出,单片机程序状态字PSW的OV位到底是怎么判断溢出的?有CY位不就够了么?...
单片机程序状态字PSW的OV位是溢出标志,当进行算数运算时,如果产生溢出,则硬件将OV置1,否则清0。执行有符号加、减法指令的时候,当D6位有向D7位的进位或借位时C6Y=1时,而D7位没有向CY位的进位或借位C7Y=0时,OV=1或C6Y=0,C7Y=,1时,则OV=1。
溢出的逻辑表达式:OV=C6Y⊕C7Y。CY位是累加器的进位或借位标志,对于无符号数可以用CY来判断溢出,但是对有符号数就无法判断了,所以只有CY位是不够的。
PSW各位的定义如下:
CY(PSW.7):D7位,进位、借位标志。进位、借位CY=1;否则CY=0.
AC(PSW.6):D6位,辅助进位、借位标志。当D3向D4有借位或进位时,AC=1;否则AC=0.
F0(PSW.5):D5位,用户标志位;
RS1、RS0(PSW.4及PSW.3):D4、D3位,寄存器组选择控制位;
OV(PSW.2):溢出标志。有溢出OV=1,否则OV=0;
F1(PSW·1):D1位,用户标志位;
P(PSW·0):奇偶校验标志位;累加器ACC中的运算结果有奇数个1时P=1,否则P=0。
扩展资料
数据类型:
SFR也是一种扩充数据类型,占用一个内存单元,值域为0~255。利用它可以访问51单片机内部的所有特殊功能寄存器。如用sfr P1 = 0x90这一句定P1为P1端口在片内的寄存器,在后面的语句中我们可以用P1 = 255(对P1端口的所有引脚置高电平)之类的语句来操作特殊功能寄存器。
参考资料来源:《单片机原理及应用》曹巧媛 编著 电子工业出版社 第二章 MCS-51单片机结构及原理 第一节 MCS-51单片机结构
参考资料来源:百度百科--PSW
参考资料来源:百度百科--程序状态字
c语言32位数如何判断溢出,单片机程序状态字PSW的OV位到底是怎么判断溢出的?有CY位不就够了么?...相关推荐
- 嵌入式开发学习笔记5-了解单片机中的特殊功能寄存器(寄存器B、累加器A和程序状态字PSW)
嵌入式开发学习笔记5-了解单片机中的特殊功能寄存器(寄存器.累加器和程序状态字) 累加器A 寄存器B 程序状态字PSW 累加器A 累加器A是ACC(Accumulator)的缩写,累加器A是一个具有特 ...
- C语言32位数加一精简,一个简单的32位多任务操作系统的实现(1)
一个简单的32位多任务操作系统的实现(1) 一个简单的32位多任务操作系统的实现(1) 适用对象:具有一定的C语言,汇编语言基础,对计算机系统结构有基本了解的操作系统爱好者 系统的启动过程:任何一台计 ...
- (C语言)从键盘输入输入一个不大于5位的整数,判断位数,并逆序输出
@[TOC]( (C语言)从键盘输入输入一个不大于5位的整数,判断位数,并逆序输出 #include <stdio.h> void main() {int n,a,b,c,d,e,m;pr ...
- C语言:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. 程序分析:此题要求判断一个五位数是不是回文数,首先要理解回文数的定义,然后我们就要思考如何处理我们输入的五 ...
- 单片机c语言程序设计实训报告,(整理)单片机C语言程序设计实训100例.doc
(整理)单片机C语言程序设计实训100例.doc .单片机C语言程序设计实训100例基于8051Proteus仿真案例第 01 篇 基础程序设计01闪烁的LED/* 名称闪烁的LED说明LED按设定的 ...
- C语言32个关键字与C++62个关键字详解
C语言32个关键字 关键字 说明 auto 声明自动变量 short 声明短整型变量或函数 int 声明整型变量或函数 long 声明长整型变量或函数 float 声明浮点型变量或函数 double ...
- 汇编语言--LC3tools实现两个32位数相加
实现原理 将每个32位数拆成两个16位数(低16位,高16位) 低16位与低16位相加,高16位与高16位相加 判断低16位进位 分别取两个低16位的最高位进行比较,两个最高位都是1必定会进位,两个最 ...
- 32位系统和64的区别c语言,32位 与 64 位 区别 : CPU 操作系统 应用程序...
1.64位CPU与32位CPU 这两者的指令集合.操作数位数.寄存器名称和个数等等都不相同. 一.比如一条mov eax,1指令,可能在32bCPU上对应的机器指令是0x1201:在64位机器上就是0 ...
- c语言时钟加秒表报告,51单片机秒表计时器课程设计报告(含C语言程序)-20210419061005.docx-原创力文档...
XXXXXX学院 51单片机系统设计课程设计报告 题 目:秒表系统设计 专业.班级: 学生姓名: 学号: 指导教师: 分数: [摘要]本设计是一个秒表计时器,采用51单片机实现.电路包括以下儿部分:单 ...
最新文章
- 【checkStyle】ignore some class
- idea中修改项目代码后,Git没有提示代码有改动(解决办法)
- python两个列表合并 从小到大排列_Python对两个有序列表进行合并和排序的例子...
- 使用SampleGrabber过滤器扑获图像
- where is path tag generated
- 《狂人日记》金句摘抄(一)
- 【BZOJ3143】游走,概率计算+高斯消元
- python3提取字符串中的数字_如何在Python中从字符串中提取数字?
- Cocos2d-x学习之创建Android工程和编译
- 识别水货手机的一个办法
- 25. 熟悉非标准的哈希容器
- python流程自动化_python selenium 自动化流程的一些总结与思考
- SqlServer2008卸载掉
- DHTMLX-Grid
- Hadoop(一) 原理简介、基本构建
- 事关美亚柏科未来发展!智慧城市建设注入新动力
- ios dyld: Library not loaded: @rpath/xxx.framework/xxx 之根本原因
- 椭圆曲线加密中定义的加法运算
- word 图片导入不翻转_如何在Microsoft Word中翻转图片
- 尚医通 (三十一) --------- 手机登录
热门文章
- 图片无法显示计算机可用内存不足怎么办,windows照片查看器无法显示此图片,因为计算机可用内存不足...
- Unity学习笔记 关于Unity相机的FOV以及水平FOV和垂直FOV之间的转换
- 中文顿号怎么输入_键盘上顿号怎么打出来 顿号用键盘打出来的两种方法
- 总搞不懂区块链各共识机制的优缺点?来听听这位十多年经验技术老兵的吐血分享吧!
- 区块链在这些生活场景中悄然落地了......
- CSS盒模型--边框设置:border: 1px solid red(像素 样式 颜色 ),border-bottom:1px dotted #ccc
- combobox之属性介绍
- zzulioj:1196: 数星星(二)(结构体专题)
- Excel表格中如何合并同样名称的行数据
- 低频和高频怎么理解?低频噪声怎么理解?怎么样消除肌电信号中的低频噪声?