扩展一个数字的位表示和截断数字

12 篇文章 2 订阅
订阅专栏

、扩展一个数字的位表示

一种常见的运算是在不同字长的整数之间转换,例如,从一个较小的数据类型转换到一个较大的数据类型。

将一个无符号数转换为一个更大的数据类型,只需要简单地在表示的开头添加 0,这种运算称为零扩展

将一个补码数字转换为更大的数据类型要执行符合扩展,规则是在表示中添加最高有效位的值的副本。如果原始的位表示为这里写图片描述,那么扩展后的位表示为这里写图片描述

下面证明符号扩展是正确的,即证明下式:

这里写图片描述

表达式的左边增加了k位这里写图片描述的副本。采用的是数学归纳法,即证明符号扩展一位保持数值不变,那符号扩展任何位都保持这种属性。

这里写图片描述

根据定义展开,

这里写图片描述

、截断数字
例如,在一台32位机上,将 int类型强制转换为short时,就会将32位的int截断为16位的,将一个w位的数这里写图片描述截断为一个k位数字时,将会丢弃高w-k位,得到一个位向量这里写图片描述,截断一个数字可能会改变一个它的值,这是溢出的一种形式。

对于一个无符号数 x,截断它到k位,相当于计算这里写图片描述,通过下式计算得到:
这里写图片描述

对于一个补码数字 x, 相似的推理可知道,

这里写图片描述,也就是,这里写图片描述 能都被位级表示为 这里写图片描述,不过,一般而言,这个被截断的数字被视为有符号的,这将得到数值 这里写图片描述

这里写图片描述

参考:深入理解计算机系统(第二版)

32数据移植到16机系统上兼容处理
陌上花开缓缓归以的博客
02-07 284
1,我们在处理数据时,很多时候系统不兼容的情况,比如我们有时候需要将32数据移植到16机器上,直接处理会导致数据截断,我们怎么处理呢。
一种复数浮点协方差矩阵的设计和实现
10-23
协方差矩阵的计算是信号处理领域的典型运算,是实现多级嵌套维纳滤波器、空间谱估计、相干源个数估计以及仿射不变量模式识别的关键部分,广泛应用于雷达、声呐、数字图像处理等领域。采用FPGA(Field Programmable Gate Array)可以提高该类数字信号处理运算的实时性,是算法工程化的重要环节。但是FPGA不适宜对浮点数的处理,对复杂的不规则计算开发起来也比较困难。故目前国内外协方差运算的FPGA实现都是采用定点运算方式。在充分应用FPGA并行处理能力的同时,为了扩展数据处理的动态范围,减少数据溢出机率,避免数据截断所产生的误差,提高协方差矩阵的运算精度以及扩展该运算的通用性。  
【C语言】关于整型提升、截断、打印数据的结果
The porters of knowledge
09-13 739
关于整型提升,发生截断,和打印结果(原码反码补码)
扩展一个数字截断数字
lipanpan900721的博客
10-16 229
1.扩展一个数字表示 2.截断数字
笔记:扩展一个数字表示 无符号数的零扩展 补码数的符号扩展
qq_46470984的博客
02-01 2821
一、无符号数的零扩展 如果是无符号数,想要扩展n 则是在前面添加n0 二、补码数的符号扩展 如果是补码数,想要扩展n 看最高是0还是1,是0则扩展0,是1则扩展1。 如果想要扩展2,如下例: 这是因为补码数第一为符号 取负 如下示例: ...
扩展一个数字表示
08-30 770
int func1(unsigned word) { return (int)((word > 24); } int func2(unsigned word) { return ((int)word > 24; } w func1(w) f
扩展截断
weixin_30481087的博客
08-23 352
一个小规律, 2^n-2^(n-1) = 2^(n-1) 3^n-3^(n-1)=2*3^(n-1) 。 扩展其实很好理解,正数和0往前加零就够了,负数则是往前加一,不过注意扩展往往都是隐形的,不知不觉就扩展了,比如 short i = 6; int j = i; 注意 扩展 数值是不变的 截断,就是保留低k二进制码...
计组——第三章
weixin_46105989的博客
01-28 354
一、运算 1. 按运算和逻辑运算的区别: 按运算是对每一个二进制进行运算; 逻辑运算是把每一部分当成一个整体进行逻辑判断,只要非零即为真。 2. 移运算: 有符号:算术移 (1)左移:低补0 (2)右移:高补符号 无符号:逻辑移 (1)左移:低补0 (2)右移:高补0 (注意:移操作可能发生溢出【最高为1时】) 3.扩展截断扩展: (1)有符号:高补符号 (2)无符号:高补0 截断:强行丢弃一定的数 (注意:截断溢出和截断错误不会导致异常或错误报告,但输出
扩展矩阵leetcode-LeetCode:力扣解决方案
07-01
锚定第一个,然后使用2Sum的第二种方法 请注意,您可以将 x1 + x2 + x3 与目标进行比较以截断无用的计算; 为避免重复,您需要使用 if(i>0 && nums[i] == nums[i-1]) continue; 组合和:(39, 40, 216, 377) (39, 40,...
vscode-string-manipulation:VSCode扩展添加常见的字符串操作
05-06
从第一个数字开始按顺序排列所有数字 用 要使用这些命令,请在编辑器中选择文本后按⌘+ p并输入上面的任何命令。 执照 MIT许可证(MIT) 版权所有(c)2016 Marc Lipovsky 特此免费授予获得此软件和相关文档文件...
Counterstring-crx插件
04-02
扩展名是一个简单的CounterString生成器,该生成器:-显示一个询问字符数的对话框,-然后生成该长度的CounterString-将CounterString记录到开发控制台以允许复制和粘贴,-该扩展名还插入了CounterString进入显示...
9GAG Counter-crx插件
04-06
语言:English 显示9GAG会话的已查看条目的数量。 滚动...滚动... 我想知道我现在看过多少愚蠢的笑话。 哦,很多。 好的,只有10个......... 计数被截断到最后两数字,如果数字大于99,则将红色变为红色。
计算机系统的运算:扩展截断,从基础规则到详解
m0_72410588的博客
08-28 1253
这些操作在计算机的数据处理过程中起到了重要的作用,不仅可以保证数据的准确性,还能提高系统的存储和运算效率。在实际应用中,根据需要选择合适的扩展截断操作,对数据进行处理,以满足具体的需求。具体而言,对于一个有符号的二进制数,如果要将其扩展为更长的数,则在高添加0,即在二进制表示的左侧填充0。例如,在进行乘法运算时,需要将两个数值先进行扩展,然后再进行运算,以确保结果的准确性。对于有符号的二进制数,如果要将其扩展为更长的数,则在高添加与符号相同的值,即在二进制表示的左侧填充符号
扩展截断(四)
w727655308的博客
04-29 1433
整数隐式转换, 显式转换
精度截断的原理
藏经阁
12-16 524
精度截断是由寄存器的数一定实现的 举个例子: int 转 short 就可能会发生截断——截断时只保留低 16 (short 为2字节) 即把32的数往16的寄存器里存,所谓截断,所谓精度丢失 ...
扩展数字表示
alike_meng的博客
12-09 450
#include<stdio.h> typedef unsigned char *byte_pointer; void show_bytes(byte_pointer start, size_t len) { size_t i; for (i = 0; i < len; i++) printf("%.2x ", start[i]); printf("\n"); ...
扩展数字
xy的博客
04-09 1013
扩展:将一个无符号数转换成一个更大的数据类型,我们只需简单的在表示开头添加0,这种运算称为零扩展。 符号扩展:将一个补码数字转换成为一个更大的数据类型可以执行符号扩展,规则是在表示中添加最高有效置的副本。看一下一个代码:#include <iostream> using namespace std; typedef unsigned char* byte_pointer;void show_b
符号扩展,数据截断
huo
05-29 2508
符号扩展
ggplot2 geom_text 画布外数字显示数字太大
最新发布
09-30
使用ggplot2的geom_text函数在画布外显示数字时,由于默认的坐标轴范围设置不包含画布外的数字,所以会导致数字过大被截断或者完全看不到。 解决这个问题的方法有两种: 1. 调整坐标轴范围:可以手动设置坐标轴...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 异或运算规则及其应用 35277
  • C++ 标识符 7726
  • 定义和初始化vector对象 7692
  • Qt5::WindowFlags枚举类型 6041
  • 蒙特卡罗算法 与 拉斯维加斯算法 5924

分类专栏

  • C++primer 107篇
  • Data structure and algorithm 7篇
  • Qt 17篇
  • Unix/Linux 24篇
  • LeetCode 80篇
  • Machine-Learning 5篇
  • Computer System 12篇
  • Web 5篇
  • APUE 16篇
  • Python 2篇
  • Essay&Philosophy 3篇
  • Poetry 4篇
  • Reading-List 1篇
  • Patter-Design
  • Java
  • 剑指offer 45篇
  • Oracle 1篇

最新评论

  • 使用文件重定向

    huamu_xingkong: 我也是在树上看到了这段,测试了没有找到这个命令:

  • 信号和槽机制

    Tisfy: 总结得十分精辟,就像那:纷披乍依迥,掣曳或随风。

  • 程序安装原理

    给我跑: 嗖的一下就懂了

  • 常用查找算法总结

    Frank---7: 一起努力呀,欢迎互访互关

  • 范围for语句

    闲鱼翻不了身: 这好像用的是c++ primer的例子

大家在看

  • 基于MSP430单片机超声波测距仪倒车防撞报警器系统
  • 2024 年最全的 21 款数据恢复工具软件汇总 180
  • 【Rust】——面向对象设计模式的实现 466
  • 自媒体蓝海日本整蛊综艺,撸视频号分成计划收益,每天只需一小时,新手小白轻松上手......
  • 【漏洞复现】多客圈子论坛系统 httpGet 任意文件读取漏洞

最新文章

  • 硬盘的分区结构及其数据储存原理
  • 0、1编码
  • 操作系统内核
2016年255篇
2015年64篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

两个鬼故事破碎轨迹厚道的意思纯粮酒起名来自新世界动漫起名网免费取名测分数台式机网卡起名图片硅谷大帝有哪些字起名给婴儿起名大全姓罗倪姓起名头文字d第三部国语300178鱼的记忆真的只有7秒吗百货店起什么名字好免费网上宝宝起名打分非主流可爱美女图片欲蛇十五从军征潦草电影网免费注册商标名称大全起名风驭属猪人男宝宝起名宜用字余姓的怎么起名生肖鼠的人怎样起名动漫公司起名用字大全张姓男羊宝宝起名忍者cadets张姓女孩起名好听187是移动还是联通少年生前被连续抽血16次?多部门介入两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”淀粉肠小王子日销售额涨超10倍高中生被打伤下体休学 邯郸通报单亲妈妈陷入热恋 14岁儿子报警何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言张家界的山上“长”满了韩国人?男孩8年未见母亲被告知被遗忘中国拥有亿元资产的家庭达13.3万户19岁小伙救下5人后溺亡 多方发声315晚会后胖东来又人满为患了张立群任西安交通大学校长“重生之我在北大当嫡校长”男子被猫抓伤后确诊“猫抓病”测试车高速逃费 小米:已补缴周杰伦一审败诉网易网友洛杉矶偶遇贾玲今日春分倪萍分享减重40斤方法七年后宇文玥被薅头发捞上岸许家印被限制高消费萧美琴窜访捷克 外交部回应联合利华开始重组专访95后高颜值猪保姆胖东来员工每周单休无小长假男子被流浪猫绊倒 投喂者赔24万小米汽车超级工厂正式揭幕黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发当地回应沈阳致3死车祸车主疑毒驾恒大被罚41.75亿到底怎么缴妈妈回应孩子在校撞护栏坠楼外国人感慨凌晨的中国很安全杨倩无缘巴黎奥运校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变王树国卸任西安交大校长 师生送别手机成瘾是影响睡眠质量重要因素国产伟哥去年销售近13亿阿根廷将发行1万与2万面值的纸币兔狲“狲大娘”因病死亡遭遇山火的松茸之乡“开封王婆”爆火:促成四五十对奥巴马现身唐宁街 黑色着装引猜测考生莫言也上北大硕士复试名单了德国打算提及普京时仅用姓名天水麻辣烫把捣辣椒大爷累坏了

两个鬼故事 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化