C语言小白急救 整型与浮点型在内存中的存储

news2024/7/6 19:30:30

文章目录

  • 一、有无符号整型的存储
    • 1.整形家族
    • 2.整形在内存中的存储
    • 3.大小端介绍
    • 4.unsigned 类型存储
  • 二、浮点型的存储
    • 1.浮点型家族
    • 2.浮点型的存储


一、有无符号整型的存储

1.整形家族

字符在内存中存储的是字符的ASCII码值,ASCII码值是整形,所以它也归于整型家族
char  //字符数据类型
 unsigned char
 signed char//C语言没有明确定义是否有signed char 取决于编译器
short  //短整形
 unsigned char
 signed char
int  //整形
 unsigned char
 signed char
long  //长整形
 unsigned char
 signed char
long long  //更长整形//不常用

unsigned 指的是没有符号位

2.整形在内存中的存储

计算机能够处理的是二进制数据,数据在内存中存储的都是以二进制存储
整形的二进制存储形式有:原码、反码、补码
正整数:原码、反码、补码相同
负整数:原码、反码、补码要进行计算
在这里插入图片描述

整数在内存中存储的是补码的二进制序列

为了方便查看,在查看内存时一般是16进制形式
例:

int main()
{
	int a = 10;

	return 0;
}

3.大小端介绍

大端字节序是把数据的高字节内容存放到低地址,低字节内容存放在高地址处
小端字节序是把数据的高字节内容存放到高地址,低字节内容存放在低地址处

例1:小端字节序

int main()
{
	int a = 0x11223344;

	return 0;
}

在这里插入图片描述
VS编译器中默认使用小端字节排序

例2:大端字节序

int main()
{
	int a = 0x11223344;

	return 0;
}

在这里插入图片描述

4.unsigned 类型存储

由于unsigned 类型没有符号位,所以数据都 >=0 的,其中char 的类型的值的范围是:-128 ~ 127 ; unsigned char 的值的范围是:0 ~ 255;int 的值的范围是:- 2^31 ~ 2^31-1 unsigned int 的值的范围是:0 ~ 2^32-1;
signed char在这里插入图片描述
unsined char
在这里插入图片描述
int型的以此类推

二、浮点型的存储

1.浮点型家族

float  单精度浮点型
double  双精度浮点型
long double  更长的双精度浮点型

2.浮点型的存储

浮点数存储规则:
根据国际标准IEEE(电子和电气工程协会)754,任意一个二进制浮点数v可以表示成下面的形式:

(-1) ^ S* M * 2 ^ E
(-1)^S 表示符号位,当S=0时,V为正数;当S=1时,V为负数
M表示有效数字,大于等于1,小于2
2^E表示指数位

比如:十进制的5.0,写出二进制的形式是101.0,相当于1.01 * 2^2
按照上面的格式,可以得出S=0,M=1.01,E=2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/905154.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】做一个飞机空战小游戏(十一)——游戏过关、通关、结束的设置

[导读]本系列博文内容链接如下: 【C】做一个飞机空战小游戏(一)——使用getch()函数获得键盘码值 【C】做一个飞机空战小游戏(二)——利用getch()函数实现键盘控制单个字符移动【C】做一个飞机空战小游戏(三)——getch()函数控制任意造型飞机图标移动 【C】做一个飞…

数据结构(Java实现)-集合与时间和空间复杂度

什么是集合框架 Java 集合框架 Java Collection Framework ,又被称为容器 container ,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes 。 什么是数据结构 数据结构(Data Structure)是计算机存储、组织数据的方式,指相互之…

第6章 性能分析相关的CPU特性

性能分析的终极目标是找到性能瓶颈,并定位到与之相关的代码段。 性能剖析可以快速让人了解应用程序热点。有时,性能剖析是开发者解决性能问题的唯一手段,尤其是针对较高层次性能问题。然而,即使解决了所有的主要性能问题&#xf…

Spring练习---环境搭建步骤分析27,这里要找老师的素材

1、Spring现在各层都有解决方案了,web层有springMVC,Dao层有jdbcTemplate 1.1 纯静态的还得转换一下 2、老师给的素材在文件里了 3、导入的坐标导入到文件里 4、包结构给你讲一下,这个包是controller层: 4.1 Serive业务层,Dao数…

使用 Node.js 生成优化的图像格式

使用 Node.js 生成优化的图像格式 图像是任何 Web 应用程序的重要组成部分,但如果优化不当,它们也可能成为性能问题的主要根源。在本文中,我们将介绍如何使用 Node.js 自动生成优化的图像格式,并以最适合用户浏览器的格式显示它们…

QT 基本对话框

包括&#xff1a; 1.标准文件对话框 dialog.h #ifndef DIALOG_H #define DIALOG_H#include <QDialog> #include <QTextCodec> #include <QLabel> #include <QLineEdit> #include <QPushButton> #include <QGridLayout> #include <QFr…

Vscode详细安装教程

Vscode官网下载 官网地址&#xff1a;Download Visual Studio Code - Mac, Linux, Windows 通过链接可以直接跳转到下面的页面当中&#xff0c;支持的版本有Windows、Linux、Mac&#xff0c;可以选择适配自己电脑的版本&#xff0c;一般来说应该是Windows x64的。不要直接点W…

C++图形界面编程-MFC

C控制台程序是命令行黑框&#xff0c;如果要写一个图形界面&#xff0c;VS也提供了图形界面编程MFC。建项目的时候选如下选项&#xff1a; 类似于QT。 问&#xff1a;那么MFC项目的运行入口main()或WinMain()在哪里呢&#xff1f; 答&#xff1a;其实&#xff0c;在MFC应用程…

Kubernetes 使用 Rancher 管理

K8S集群管理工具 只能管理单个K8S集群 kubectl命令行管理工具 dashboard&#xff08;K8S官方的UI界面图形化管理工具&#xff09; &#xff08;管理多集群很麻烦&#xff0c;切换不同集群每次需要更改kube-config文件[kubectl配置文件]&#xff0c;如果kubeadm部署每次都需…

字符设备驱动实例(PWM和RTC)

目录 五、PWM 六、RTC 五、PWM PWM(Pulse Width Modulation&#xff0c;脉宽调制器)&#xff0c;顾名思义就是一个输出脉冲宽度可以调整的硬件器件&#xff0c;其实它不仅脉冲宽度可调&#xff0c;频率也可以调整。它的核心部件是一个硬件定时器&#xff0c;其工作原理可以用…

15.配置资源管理

文章目录 配置资源管理Secret陈述式创建声明式创建存储卷挂载变量引用创建tls类型创建dockerconfigjson类型安装docker&#xff0c;创建 harbor仓库pod节点设置 ConfigMap创建挂载目录挂载文件以环境变量引用通过打补丁的方式修改配置 总结 配置资源管理 Secret Secret 是用来…

项目实战 — 博客系统③ {功能实现}

目录 一、编写注册功能 &#x1f345; 1、使用ajax构造请求&#xff08;前端&#xff09; &#x1f345; 2、统一处理 &#x1f384; 统一对象处理 &#x1f384; 保底统一返回处理 &#x1f384; 统一异常处理 &#x1f345; 3、处理请求 二、编写登录功能 &#x1f345; …

Android 10.0 SystemServer进程读写sdcard权限的修改

1.前言 在10.0的系统开发中,在一些系统进程中,也就是在SystemServer的进程中,其中系统服务中会要求读写Sdcard的一些功能,然后 默认是没有读取sdcard权限的,而在app中可以申请sdcard读写权限在系统服务中就不能申请权限,接下来看怎么授权实现sdcard授权 如图: 2.Sy…

计算机网络(9) --- 数据链路层与MAC帧

计算机网络&#xff08;8&#xff09; --- IP与IP协议_哈里沃克的博客-CSDN博客IP与IP协议https://blog.csdn.net/m0_63488627/article/details/132155460?spm1001.2014.3001.5502 目录 1.MAC帧 1.MAC地址 2.MAC帧报头 3.资源碰撞 4.MTU 1.对IP协议的影响 2.对UDP协议…

【docker】基于dockerfile编写LNMP

目录 一、基础环境准备 二、部署nginx&#xff08;容器IP为172.18.0.10&#xff09; 1、整个Dockerfile文件内容 2、配置nginx.conf文件 3、构建镜像 ​编辑 三、部署mysql 1、整个Docker文件内容 2、准备my.conf文件 3、生成镜像 4、启动镜像容器 5、验证mysql 四、PH…

视频局部区域移动检测, 删除相似帧

视频局部区域移动检测, 删除相似帧 完整方案在本文最后, 不想听故事的直接跳转到完整方案即可 起因 老板的一个东西找不到了, 让查监控 场景 东西放在一个架子上, 由一个海康威视全天候录像的摄像头监控, 但是巧就巧在这个要找的东西被放在了摄像头的死角里, 正好被柜子的隔…

nginx crlf+xss漏洞组合拳

1.crlf漏洞概述 CRLF是指回车和换行符的组合&#xff0c;它们的十六进制编码分别为0x0d和0x0a。在HTTP协议中&#xff0c;HTTP头和HTTP正文之间使用两个CRLF来进行分隔。如果攻击者能够注入恶意的换行符&#xff0c;就能够向HTTP消息中插入恶意的代码或会话Cookie。CRLF漏洞通常…

Redis是如何保证高可用的?

Redis这种基于内存的关系型数据库我们在选用的时候就是考虑到它的快。而且可以很方便的实现诸如分布式锁、消息队列等功能。 笔者在前一段秋招面试的时候就被提问&#xff0c;“Redis是怎么保证高可用的&#xff1f;” 后续的子问题包含&#xff0c;集群模式是怎么实现的&…

HTTP连接管理

基础知识&#xff1a;非持久连接 HTTP初始时1.0版本在浏览器每一次向服务器请求完资源都会立即断开TCP连接&#xff0c;如果想要请求多个资源&#xff0c;就必须建立多个连接&#xff0c;这就导致了服务端和客户端维护连接的开销。 例如&#xff1a;一个网页中包含文字资源也包…

1、攻防世界第一天

1、网站目录下会有一个robots.txt文件&#xff0c;规定爬虫可以/不可以爬取的网站。 2、URL编码细则&#xff1a;URL栏中字符若出现非ASCII字符&#xff0c;则对其进行URL编码&#xff0c;浏览器将该请求发给服务端&#xff1b;服务端会可能会先对收到的url进行解码&#xff0…