有符号数和无符号数的加减运算
一、无符号数的加减运算
-
加法
- 规则:直接按二进制逐位相加,若最高位产生进位(即结果超出(2^n)范围),则结果对(2^n)取模((n)为位数)。
- 示例(8位无符号数):
- (200 + 100 = 300),但8位最大值为255,溢出后结果为(300 \mod 256 = 44)。
- 结果:(\boxed{44})
-
减法
- 规则:直接按二进制逐位相减,若被减数小于减数,结果回绕为(2^n - |被减数 - 减数|)。
- 示例(8位无符号数):
- (10 - 20 = -10),回绕后结果为(256 - 10 = 246)。
- 结果:(\boxed{246})
二、有符号数的加减运算(补码表示)
-
加法
- 规则:
- 直接按二进制逐位相加(符号位参与运算)。
- 溢出判断:若两个正数相加结果为负,或两个负数相加结果为正,则溢出。
- 示例(8位有符号数):
- (100 + 50 = 150)(8位有符号数范围为(-128)到(127)),溢出后结果为补码(10010110_2 = -106)。
- 结果:(\boxed{-106\quad(\text{溢出})})
- 规则:
-
减法
- 规则:将减法转换为加法,即(A - B = A + (-B)),其中(-B)为(B)的补码(取反后加1)。
- 示例(8位有符号数):
- (50 - 100 = 50 + (-100)):
- (100)的补码:取反(01100100_2 \rightarrow 10011011_2),加1得(10011100_2)(即(-100))。
- 计算(00110010_2 + 10011100_2 = 11001110_2)(补码),对应十进制(-50)。
- 结果:(\boxed{-50})
- (50 - 100 = 50 + (-100)):
三、溢出检测
-
无符号数:
- 加法溢出:最高位产生进位(进位标志位为1)。
- 减法溢出:被减数小于减数(借位标志位为1)。
-
有符号数:
- 加法溢出:两正数相加得负,或两负数相加得正。
- 减法溢出:正数减负数得负,或负数减正数得正。
四、关键区别
| 运算类型 | 无符号数 | 有符号数(补码) |
|---|---|---|
| 表示范围 | (0 \leq x < 2^n) | (-2^{n-1} \leq x < 2^{n-1}) |
| 溢出处理 | 结果对(2^n)取模 | 符号位异常(需检测溢出) |
| 减法实现 | 直接二进制减法 | 转换为加法((A + (-B))) |
五、常见问题
-
为什么有符号数用补码表示?
- 补码统一了正负数的加减法规则,符号位可直接参与运算,无需额外判断。
-
如何快速计算补码?
- 对原码取反(按位取反)后加1。例如:
(100_{10} = 01100100_2 \rightarrow 10011011_2 + 1 = 10011100_2)(即(-100))。
- 对原码取反(按位取反)后加1。例如:
-
如何判断结果是否溢出?
- 无符号数:观察进位/借位标志位。
- 有符号数:检查符号位是否异常(如正+正=负)。
通过上述规则和示例,可以清晰理解无符号数和有符号数在加减运算中的差异及处理逻辑。
相关文章:
有符号数和无符号数的加减运算
一、无符号数的加减运算 加法 规则:直接按二进制逐位相加,若最高位产生进位(即结果超出(2^n)范围),则结果对(2^n)取模((n)为位数)。示例(8位无符号数): (200 …...
动态链接器(十):重定位
ELF文件中有许多种类型的重定位条目,这些重定位条目指导动态链接器在加载或运行时解析符号地址,确保程序能够正确地引用动态库中的函数和变量。 本文主要介绍那些与动态链接有关的重定位条目(主要介绍Rela相关的,Rel相关的不作介…...
EGO-Planner的无人机视觉选择(yolov5和yolov8)
EGO-Planner的无人机视觉选择(yolov5和yolov8) 效果 yolov5检测效果 yolov8检测效果 一、YOLOv8 vs YOLOv5:关键差异解析 1. 训练效率:为何YOLOv8更快? 架构轻量化 YOLOv8采用C2f模块(Cross Stage Partia…...
IO标准函数和时间函数
1、将当前的时间写入到time. txt的文件中,如果ctrlc退出之后,在再次执行支持断点续写 1.2022-04-26 19:10:20 2.2022-04-26 19:10:21 3.2022-04-26 19:10:22 //按下ctrlc停止,再次执行程序 4.2022-04-26 20:00:00 5.2022-04-26 20:00:0…...
为AI聊天工具添加一个知识系统 之133 详细设计之74通用编程语言 之4 架构及其核心
本篇继续讨论 通用编程语言。 说明:本阶段的所有讨论都是围绕这一主题展开的,但前面的讨论分成了三个大部分(后面列出了这一段的讨论题目的归属关系)-区别distinguish(各别): 文化和习俗。知识…...
【零基础到精通Java合集】第二十三集:G1收集器深度解析
课程标题:G1收集器深度解析——面向大内存与低延迟的现代垃圾回收器(15分钟) 目标:掌握G1核心设计思想、运行机制与调优策略,理解其如何平衡吞吐量与低延迟 0-1分钟:课程引入与G1设计目标 以“城市交通智能调度”类比G1核心思想:将堆内存划分为多个区域(Region),动…...
似然函数与极大似然估计
前言 本文隶属于专栏《机器学习数学通关指南》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见《机器学习数学通关指南》 正文 📚 1. 似然函数&a…...
QSFP(Quad Small Form-factor Pluggable)详解
1. QSFP的定义 QSFP(Quad Small Form-factor Pluggable)是一种四通道热插拔光模块/电模块,专为高速网络传输设计。其名称中的“Quad”表示模块集成4个独立通道,每个通道支持1Gbps至10Gbps速率(总带宽可达40Gbps&#…...
WDM_OTN_基础知识_波分系统基本构成-无源器件
在波分系统中通常将发光,对光进行放大以及产生光电转换的器件称之为有源器件,例如光放,激光器,与此相反,将那些不发光,不对光进行放大,也不产生光电转换的器件称之为无源器件,波分系统中的无源器…...
【音视频】ffmpeg音视频处理基本流程
一、ffmpeg音视频处理基本流程 首先先看两条命令 ffmpeg -i 1.mp4 -acodec copy -vcodec libx264 -s 1280x720 2.flv ffmpeg -i 1.mp4 -acodec copy -vcodec libx265 -s 1280x720 3.mkv-i :表示输入源,这里是1.mp4,是当前路径下的视频文件-acodec copy…...
【网络编程】之TCP实现客户端远程控制服务器端及断线重连
【网络编程】之TCP实现客户端远程控制服务器端及断线重连 TCP网络通信实现客户端简单远程控制主机基本功能演示通信过程代码实现服务器模块执行命令模块popen系列函数 客户端模块服务器主程序 windows作为客户端与服务器通信#pragma comment介绍 客户端使用状态机断线重连代码实…...
云原生容器编排:构建智能弹性应用的自动化引擎
引言:重构应用部署范式 Google Borg系统管理着超2500万容器实例,每日处理200亿个任务。阿里巴巴双十一使用Kubernetes实现300万Pod秒级弹性,资源利用率达65%。CNCF 2023报告显示全球Kubernetes生产采用率突破92%,CRI-O容器启动速…...
centos虚拟机安装
以下是一个详细的 VMware CentOS 虚拟机安装教程,结合了最新的信息和步骤: 一、准备工作 1. 下载 VMware 软件 访问 VMware 官方网站:VMware Workstation 官网。点击“现在安装”并下载适合您操作系统的 VMware Workstation。 2. 下载 Ce…...
社会力模型:Social force model for pedestrian dynamics
Social Force Model——社会力模型-CSDN博客 简介: 时间:1995 期刊:《Physical Review E》 作者:Dirk Helbing and Peter Molnar 摘要: 提出一种描述行人运动的“社会力模型”。认为行人的运动可看作是受到一系列…...
机器学习数学通关指南
✨ 写在前面 💡 在代码的世界里沉浸了十余载,我一直自诩逻辑思维敏捷,编程能力不俗。然而,当我初次接触 DeepSeek-R1 并领略其清晰、系统的思考过程时,我不禁为之震撼。那一刻,我深刻意识到:在A…...
【Mac】2025-MacOS系统下常用的开发环境配置
早期版本的一个环境搭建参考 1、brew Mac自带终端运行: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" Installation successful!成功后运行三行命令后更新环境(xxx是mac的username&a…...
# C# 中堆(Heap)与栈(Stack)的区别
在 C# 中,堆和栈是两种不同的内存分配机制,它们在存储位置、生命周期、性能和用途上存在显著差异。理解堆和栈的区别对于优化代码性能和内存管理至关重要。 1. 栈(Stack) 1.1 定义 栈是一种后进先出(LIFO࿰…...
ubuntu离线安装nvidia-container-runtime
参考文章 ubuntu系统docker20.4版本安装nvidia-container-runtime3.11.0-1版本(离线安装nvidia-docker) - jokerMM - 博客园 https://zhuanlan.zhihu.com/p/15194336245 一、软件地址 Index of /nvidia-docker/libnvidia-container/stable/ 从上述地地址——进入对应系统—…...
用Python+Flask打造可视化武侠人物关系图生成器:从零到一的实战全记录
用PythonFlask打造可视化武侠人物关系图生成器:从零到一的实战全记录 一、缘起:一个程序小白的奇妙探索之旅 作为一个接触Python仅13天的编程萌新,我曾以为开发一个完整的应用是遥不可及的事情。但在DeepSeek的帮助下,我竟用短短…...
学习笔记-DeepSeek在开源第四天发布DualPipe和EPLB两项技术
在AI模型训练的进程中,优化并行策略对于提升训练效率和资源利用率至关重要。DeepSeek在开源周第四天发布的DualPipe和EPLB两项技术,为V3/R1训练场景下的并行优化提供了创新解决方案。 DualPipe:双向管道并行算法 技术原理: Dua…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
系统设计 --- MongoDB亿级数据查询优化策略
系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log,共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题,不能使用ELK只能使用…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
云原生玩法三问:构建自定义开发环境
云原生玩法三问:构建自定义开发环境 引言 临时运维一个古董项目,无文档,无环境,无交接人,俗称三无。 运行设备的环境老,本地环境版本高,ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
