计算机系统基础第二节

今天的主题是字节,位,和整数

每个位是0或1
由于位易于储存,且在干扰强烈的电线中能稳定传输,所以计算机使用二进制

编码字节值

一个字节是8个位

数据表示实例

在这里插入图片描述

字节序

组成字的多个字节在内存中是如何储存的呢?

传统:

1.大端
低位字节具有最高地址
2.小段
地位字节具有最低地址
在这里插入图片描述
我认为就是大端就是原版照抄(由原本的字节顺序储存)
小端就是把字节顺序倒过来储存(菜鸡勿喷)

位的操作

将0视为错误(False)
其他除了0以外的数皆为"ture";
在位操作中总是返回0或1

例子:

位操作

x<<y

将x向左移动y位,将移动过的位全部舍掉,空出来的位填充0.

x>>y

将x向右移动y位,将移动屏蔽的位舍掉,空出来的位有两种情况。
如果是逻辑移位,填充0
如果是算数移位,填充字符与符号位一致。
举例
在这里插入图片描述
逻辑移位与算术移位的区别请看:https://blog.csdn.net/MyySophia/article/details/51714563

整数

有符号和无符号

1,原码表示法

在这里插入图片描述
在这里插入图片描述

补码表示法

定义:正数的补码就是它本身,负数的补码就是原负数加上模。
定点小数的模式2,定点整数的模是2^n+1
所以有在这里插入图片描述在这里插入图片描述
补码最大的优点就是将减法运算转化位加法运算
简便的方法:负数符号位为1,数值部分“各位取反,末尾加1”

反码的表示方法反码的表示方法

反码与补码的区别仅仅就在于末尾是否加1,所以由补码的定义可以推出反码的定义
在这里插入图片描述
无符号数字的范围
最小:0
最大:(2^n)-1;
有符号数字的范围
最小:-2^n-1;
最大:(2^n-1)-1;

可以看出在取值宽度上无符号数与有符号数是一致的,只是起点不同
有符号与无符号的转化*(在开始的正数时是一致的,但到了有符号的负数阶段,有符号的负数-1对应无符号的最大值,有符号负数的最小值对应的是无符号对应有符号的最大值加1)*
无符号与有符号整数的对应关系

依照上面图片就有以下匪夷所思的结论:(其中U是无符号的意思)

无符号与有符号的比较

数据类型的转化

拓展

使n拓展k位,就是向右添加k个n的符号位
拓展

举例:
实例

截断

这个比较粗暴,将X截断到w位(转化为w位),直接保留X的w位,剩下的直接舍去。
保留wl位

举例:
实例

在单个的&或|运算中,是将两个元素转化为二进制,逐个进行运算。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值