计算机组成原理——加减运算 & 溢出判断

简介: 计算机组成原理——加减运算 & 溢出判断

原码的加减运算


原码的加法运算:


  1. 正+正 → 绝对值做加法,结果为正 (可能会溢出)


  1. 负+负 → 绝对值做加法,结果为负 (可能会溢出)


  1. 正+负 → 绝对值大的减绝对值小的,符号同绝对值大的数


  1. 负+正 → 绝对值大的减绝对值小的,符号同绝对值大的数


原码的减法运算,“减数”符号取反,转变为加法:


  • 正-负 → 正+正


  • 负-正 → 负+负


  • 正-正 → 正+负


  • 负+正 → 负-负


补码的加减运算


对于补码来说,无论加法还是减法,最后都会转变成加法,由加法器实现运算,符号位也参与运算。


补充:


1. 求[-B]补


[-B]补 : [B]补连同符号位一起取反加1


2. 负数补 → 原:


①数值位取反+1;


②负数补码中,最右边的1及其右边同原码。最右边的1的左边同反码


例题


我们先看一道例题:设机器字长为8位(含1位符号位),A = 15,B = -24,求[A+B]补和[A−B]补


先将A B的原码补码都求出来



[A+B]补 = [A]补 + [B]补 = 0,0001111 + 1,1101000 = 1,1110111


原码:1,0001001 真值-9


[A-B]补 = [A]补 + [-B]补 = 0,0001111 + 0,0011000 = 0,0100111


真值+39


我们将题改一下:


其中 C = 124,求[A+C]补和[B−C]补,按照上面方法求出可得:


[A+C]补 = 0,0001111 + 0,1111100 = 1,0001011 真值-117 溢出(实际应该是139,但是溢出后是 -117)


[B−C]补 = 1,1101000 + 1,0000100 =0,1101100 真值+108


溢出判断


溢出条件


  • 只有“正数+正数 ”才会上溢 —— 正+正=负


  • 只有“负数+负数 ”才会下溢 —— 负+负=正


溢出判断:采用双符号位


正数符号为00,负数符号为11


[A+C]补 = 00,0001111 + 00,1111100 = 01,0001011 上溢


[B−C]补 = 11,1101000 + 11,0000100 = 10,1101100 下溢


记两个符号位为S1 S2 ,则V=S1异或S2


  • 若V=0,表示无溢出;


  • 若V=1,表示有溢出。


相关文章
|
算法
最小生成树算法:Prim算法
在图论中,最小生成树(Minimum Spanning Tree,简称MST)是一种常用的算法问题。最小生成树是指在一个加权连通图中选取边的子集,使得所有顶点都被覆盖,并且边的总权值最小。
1515 0
|
24天前
|
存储 人工智能 弹性计算
2026年阿里云服务器收费标准:ECS、轻量、GPU及618优惠全指南
2026年,阿里云服务器已形成**轻量应用服务器、ECS云服务器、GPU云服务器(EGS)**三大核心产品线,覆盖个人建站、企业应用、AI训练、高性能计算等全场景需求。618大促期间,阿里云推出“AI加速季,智惠生产力”主题活动,投入5亿元算力补贴,轻量服务器低至38元/年、ECS经济型实例99元/年、GPU实例低至1.5折,同时打破行业“首年低价、次年涨价”痛点,推出**续费同价至2029年**政策。本文将从三大产品线的常规收费标准、618活动价格、计费模式、优惠规则与选型建议五大维度,全面解析2026年阿里云服务器价格体系,帮助用户精准选型、高效省钱。
418 1
|
29天前
|
人工智能 弹性计算 运维
从零入门 OpenClaw 功能详解与阿里云部署保姆级教程
当下AI智能体已经从专业开发领域走入普通办公、个人生活与运维开发场景,OpenClaw作为目前人气极高的开源自动化智能体框架,凭借宽松开源协议、私有化部署特性、强大任务执行能力,收获大量使用者关注。
317 0
|
安全 网络协议 关系型数据库
|
数据采集 人工智能 搜索推荐
库存积压3000万到选品成功率45%:AI如何破解代购系统的“赌品”困局?
本文字数较多,我将为你撰写一段符合要求的简介,控制在240个字符以内: AI与大数据助力代购系统实现智能选品与精准用户画像,通过数据驱动提升选品成功率与用户复购率,结合实战案例解析技术落地路径,助力企业实现智能化转型。
|
人工智能 计算机视觉
RT-DETR改进策略【损失函数篇】| NWD损失函数,提高小目标检测精度
RT-DETR改进策略【损失函数篇】| NWD损失函数,提高小目标检测精度
1402 5
RT-DETR改进策略【损失函数篇】| NWD损失函数,提高小目标检测精度
|
域名解析 人工智能 API
使用 Websoft9 面板部署 LobeChat,打造个人 AI 大脑
本书详细介绍了从服务器环境准备到LobeChat部署与维护的全过程。首先,指导用户选购云服务器并配置安全组和SSH登录;接着,通过Websoft9面板一键安装并初始化,支持域名解析。随后,重点讲解了LobeChat的部署方法,包括应用市场和手动部署,并深入探讨多模型接入及插件扩展。最后,提供了日常维护命令和常见问题解决方法,确保系统稳定运行。适合新手及进阶用户参考。
774 0
|
Java 应用服务中间件
面对海量网络请求,Tomcat线程池如何进行扩展?
【10月更文挑战第4天】本文详细探讨了Tomcat线程池相较于标准Java实用工具包(JUC)线程池的关键改进。首先,Tomcat线程池在启动时即预先创建全部核心线程,以应对启动初期的高并发请求。其次,通过重写阻塞队列的入队逻辑,Tomcat能够在任务数超过当前线程数但未达最大线程数时,及时创建非核心线程,而非等到队列满才行动。此外,Tomcat还引入了在拒绝策略触发后重新尝试入队的机制,以提高吞吐量。这些优化使得Tomcat线程池更适应IO密集型任务,有效提升了性能。
面对海量网络请求,Tomcat线程池如何进行扩展?
|
存储 C语言
【C语言】输入/输出函数详解
在C语言中,输入/输出操作是通过标准库函数来实现的。这些函数分为两类:标准输入输出函数和文件输入输出函数。
1843 6
|
Kubernetes 架构师 Java
史上最全对照表:大厂P6/P7/P8 职业技能 薪资水平 成长路线
40岁老架构师尼恩,专注于帮助读者提升技术能力和职业发展。其读者群中,多位成员成功获得知名互联网企业的面试机会。尼恩不仅提供系统化的面试准备指导,还特别针对谈薪酬环节给予专业建议,助力求职者在与HR谈判时更加自信。此外,尼恩还分享了阿里巴巴的职级体系,作为行业内广泛认可的标准,帮助读者更好地理解各职级的要求和发展路径。通过尼恩的技术圣经系列PDF,如《尼恩Java面试宝典》等,读者可以进一步提升自身技术实力,应对职场挑战。关注“技术自由圈”公众号,获取更多资源。