溢出英语计算机,查看溢出(简述计算机溢出原理)
你是否细心观察到计算机所能表示的数字存在范围,那么计算机表示数字的范围是如何产生的呢?
我们定义一个int型的变量,已知他在存储中占用32位且数字在计算机中采用二进制的方式存储,那就不难理解32位二进制必然存在表示的范围。而int又分为无符号和有符号两种,他们的区别在于有符号要用首位去存储正负(0表示正数,1表示负数),那有符号整型最大就是0111 1111 1111 1111 1111 1111 1111 1111即2的三十次方减一了。
话不多说,呈代码:
#include
#include
int sq(int x) {
return x*x;
}int main(int argc, char *argv[]) {
int i;
for (i = 1; i < argc; i++) {
int x = atoi(argv[i]);
int sx = sq(x);
printf("sq(%d) = %d\n", x, sx);
}
return 0;
}
那么在下面的案例中,我们观察到当执行到65535的平方时,结果就有点不正常了,正数和正数相乘却产生了负数,这就是正溢出。在计算机中,乘法是通过移位和加法来实现的,而65535的二进制为1111 1111 1111 1111,算完后只保留后32位,这就是65535平方的机器码了。除此之外还有负溢出等。
所以说,写代码需谨慎。
在Linux上部分案例的运行结果如下:
转载自原文链接, 如需删除请联系管理员。
分享到:
溢出英语计算机,查看溢出(简述计算机溢出原理)相关推荐
- 计算机二进制编码优点,简述计算机内以二进制编码的优点
满意答案 wodetiane 2013.06.12 采纳率:53% 等级:11 已帮助:14226人 计算机要表示大量不同的信息,所以它也需要编码.它是一种对用数据表示的各种信息进行处理的机器. ...
- linux查看was jvm内存溢出,was manage内存溢出
异常内存溢出有个复杂的说明,为此学习啦小编为大家整理推荐了以下内容,希望大家喜欢. was manage内存溢出 WAS 内存溢出(OutofMemory)问题分析常用方法 简述 OOM(内存溢出): ...
- 英语简述计算机的发展史,计算机的发展历史-简述计算机的发展史
计算机的发展经历了哪几个阶段?各阶段的主要特征是什么? 一共有四个发展阶段: 第一个发展阶段是电子 管计算机的时代,在年到年.年第一台电子计算机问世美国宾西法尼亚大学,它由冯·诺依曼设计的.占地平方, ...
- 计算机发展历史简述及CPU构成及工作过程——Crash Course内容整理
文章目录 0. 写在前面 1. 计算设备发展简史 1.1 计算设备早期 1.2 机械式计算设备 步进计算机 差分机和分析机 1.3 机电式计算设备 机电式穿孔制表机 Harvard Mark I 1. ...
- matlab溢出的标志inf,关于C#:溢出与信息
当我在Matlab中输入一个大于max double的数字时,例如10^309,它的值大约为1.79769e+308,则返回Inf. 出于教育目的,我想获取像C编译器这样的溢出异常,该异常返回一个溢出 ...
- 计算机动画的主要应用领域,简述计算机的主要特点和主要应用领域
1."简述计算机的主要特点和主要应用领域 特点: 运算速度快 计算精度高 具有记忆能力 具有逻辑判断能力 在程序控制下自动工作 " 2."应用领域 科学计算 信息处理和管 ...
- 计算机专业简述,简述计算机专业毕业论文完整版.doc
简述计算机专业毕业论文完整版.doc 简述计算机专业毕业论文完整版 简述计算机专业毕业论文完整版 导读:计算机专业毕业论文完整版摘要 随着信息技术的高速发展,21世纪是数字信息时代,互联X正以前所未有 ...
- 计算机专业设计(论文)内容及要求,简述计算机专业毕业论文的撰写要求
简述计算机专业毕业论文的撰写要求 相关内容: 1 概述(ad hoc 网络简介;地址自动配置需要解决的问题)2 现有的地址自动配置方法(现有方法分类;特点;优缺点)3 蚁群算法(理论基础;应用到地址自 ...
- 广东取消英语和计算机考试,广东紧急停考通知!全国英语等级考试、全国计算机等级考试停考...
原标题:广东紧急停考通知!全国英语等级考试.全国计算机等级考试停考 南都讯 记者贺蓓 停考!广东省教育厅发布紧急通知.我省9月16日-17日的全国计算机等级考试.全国英语等级考试停考.补考时间将于近期 ...
- 简述计算机软件故障排查,主板故障检查维修的常用方法哪些如何排查主板故障...
主板故障检查维修的常用方法哪些如何排查主板故障 那得看主板的故障是什么~原因有很多,比如机器的板才不好,时间长会让主板变型~电源的质量不好,会烧坏主板,也有主板自身出现问题的,总之原因很多. 检查的方 ...
最新文章
- python ffmpeg pyav
- C# 全选中数字文本框内容
- 【js笔记】数组那些事[0]
- 原理图、PCB和实物是如何对应起来的
- SpringBoot配置Druid
- stanford corenlp的TokensRegex
- android画布一闪一闪的,解决Android SurfaceView绘制触摸轨迹闪烁问题的方法
- 手把手教你架构3d游戏引擎pdf_白鹭引擎团队即将发布 Egret Pro,并公布后续路线图...
- lede 内核 单 编_终于搞定,在lede官方源码编译k3固件的方法。求助变分享
- Python 音频: 使用 sounddevice 调用 ASIO 声卡驱动
- 如何提高Solidworks运行速度
- 程学旗 计算机,专家人才库数据----中国科学院计算技术研究所
- linux上如何把2个或者多个显示器合并为一个显示器
- Windows下WordPress安装教程(全)
- router禁用443端口
- mysql 中类似dateadd_MySQL查询中的DATEADD或DATE_ADD?
- Flutter 利用 Hero 动效实现列表详情页的无缝切换
- 通过ASP.NET Ajax技术模拟实现NBA比赛文字直播功能
- E420笔记本升级固态硬盘
- ts 打开sourcemap_使用ts-node和vsc来调试TypeScript代码
热门文章
- 【打卡】汽车领域多语种迁移学习挑战赛
- ubuntu20.04 安装ROS2和ROS1共存
- 【文本编辑】PPT文档被设置密码允许只读模式【解除限制】
- [conda报错 已解决]An unexpected error has occurred. Conda has prepared the above report.
- C语言实验——逆置正整数
- 手写操作系统(2)——代码是怎么运行的?
- oracle 按照中文姓首字母排序,按照偏旁部首,笔画排序 sql
- HBase流程框架图
- 想成为游戏原画师需要哪些系统的学习?
- [CTF]天下武功唯快不破