金色财经

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 592|回复: 0

16 位整型数据的取值范围

[复制链接]

738

主题

844

帖子

4579

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4579
QQ
发表于 2022-10-5 18:39:53 | 显示全部楼层 |阅读模式
16 位整型数据的取值范围

本文主要介绍在 C 编程语言中,16 位整型数据的取值范围的相关知识。

1 无符号16位整型数据
对于无符号(unsigned)整型数据,存储单元中全部二进位(bit)都用作存放数本身,而不包括符号。所以对于 16 位整型,取值范围如下:

0000 0000 0000 0000 - 1111 1111 1111 1111

对应的十进制数为 0 到 65535(即  - 1)。

所以,无符号 16 位整型数据的取值范围是 0 到 65535。

说明:无符号整型变量只能存放不带符号的整数,如 123、4567 等,而不能存放负数。

2 有符号16位整型数据
对于有符号(signed)整型数据,存储单元中最高位代表符号位:0 为正,1 为负。

a)当最高位为 0,即代表正数时,取值范围如下:

0000 0000 0000 0001 到 0111 1111 1111 1111

对应的十进制数为 1 到 32767(即  - 1)。

b)当最高位为 1,即代表负数时,取值范围如下(以补码形式表示):

1000 0000 0000 0000 到 1111 1111 1111 1111

对应的十进制数为 -32768(即 )到 -1。

所以,有符号 16 位整型数据的取值范围是 -32768 到 32767。

说明:想要确认某一种数据的取值范围(或者其他类似的事情),最好的方法是编写测试程序,在机器上实际运行,然后通过分析运行结果得出结论,毕竟,实践出真知!


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|金色财经

GMT+8, 2026-2-9 06:18 , Processed in 0.015148 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表