re的学习记录从入门到入狱【1】

25 篇文章 0 订阅

一、认识进制

1、进制

计算机只认识二进制,也就是0和1。
计算机中存储的任何文件,接收的任何指令都是由0和1组成的。
进制的定义
八进制:八个符号组成,0、1、2、3、4、5、6、7,逢8进1

十六进制:十六个符号组成,0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,逢16进1

2、 进制书写方式

列:

0	1	2	3	4	5	6	7	8	9	A	B	C	D	E	F

这是十六进制的十六个数,如果想继续写15以后的数,就得进位,就好像9+1 = 10。
八进制没有八,十六进制没有十六,先用00占位,F后面没有数值,就进位看回了第一位。第一位0,产生进位 ,0往前看一位是1,所以十六用十六进制表示就是10。

从0000写道1111:

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

3、进制的运算

进制的本质就是找对应数值,每个进制都是一个独立体系,并不需要转换成其他形式做运算。

比如8进制:
2+3 =? 23= ? 45=?
277+333=? 27654=? 237-54=?234/4=?
计算:
2+3=5
2
3=找两个3,=6
4+5=在4后面数5个数,=11
4*5=4个5查,=24
乘除法:
编表

加法表:
1+1=2  
1+2=3  2+2=4  
1+3=4  2+3=5   3+3=6  
1+4=5  2+4=6   3+4=7  4+4=10  
1+5=6  2+5=7   3+5=10  4+5=11   5+5=12  
1+6=7  2+6=10   3+6=11  4+6=12   5+6=13  6+6=14  
1+7=10  2+7=11   3+7=12  4+7=13   5+7=14  6+7=15   7+7=16

乘法表:
1*1=1  
1*2=2  2*2=4  
1*3=3  2*3=6   3*3=11  
1*4=4  2*4=10   3*4=14  4*4=20  
1*5=5  2*5=12   3*5=17  4*5=24   5*5=31  
1*6=6  2*6=14   3*6=22  4*6=30   5*6=36  6*6=44  
1*7=7  2*7=16   3*7=25  4*7=34   5*7=43  6*7=52   7*7=61

计算:277+333=?

7+3 找表=12,留21
7+3 找表=12,留21,因为第1步有一个1,所以留31
2+3 找表=5 , 进位+1=6
最后=632

计算:276*54=?

从乘法表里找,276*4 = 1370    276*5 = 1666

在这里插入图片描述
计算:234/4 = ?

看谁*423,看到4*4=20,写434
继续看表谁*4=34,是7,写00
=47

二、数据宽度

1、数据宽度
计算机存储数据,不是无限制存储数据的。
如果存储的数据超过了所能接受的范围,就会选择抛弃一些数据来存储新的数据。就好比一个容器。

常见的单位有如下几个:

位 Bit 只存一位二进制
字节 Byte 可存储八位二进制0~FF
字 Word 可存储十六位二进制0~FFFF
双字 Dword 可存储三十二位二进制0~FFFFFFFF

一个字节所能存储的内容就是八位二进制
2. 数据溢出
如果超出存储范围,就会抛弃数据,默认抛弃左边的数据。
在这里插入图片描述

三、有无符号数

正数的计数规则和无符号数是一样的,二进制0是正数,1是负数。
在这里插入图片描述
在这里插入图片描述
原码
正数在内存中不管是说按原码、反码、补码存储都正确

列:0000 1011 最高位为0,是正数,其余位是多少,我就抄多少,所以还是0000 1011;
负数:1000 1011 最高位为1,是负数,其他位置存绝对值本身,也就是1000 1011
反码
负数:符号位为1,符号位不变,其余位置取反,1变0,0变1,也就是1111 0100
补码
负数:符号位为1,符号位不变,其余位置取反,取反完成后+1,也就是1111 0101
负数在内存中存储的方式是用补码的方式存储的

四、位运算

与运算
当两个数值都为1时,就为1
在这里插入图片描述
或运算
有一个数为1,就为1
在这里插入图片描述
异或运算
不一样的时候,为1
在这里插入图片描述
非运算
取反操作
在这里插入图片描述
左移(shl)
二进制左移若干位,高位丢弃,低位补0
列:左移两位
在这里插入图片描述
右移(shr/sar)
二进制右移若干位,低位丢弃,高位补0(unsigned),有符号补符号位
列:右移两位(无符号)
在这里插入图片描述
右移两位(有符号)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值