美文网首页
day-07 总结

day-07 总结

作者: 哗啦噼里啪啦 | 来源:发表于2019-01-02 17:27 被阅读0次

进制

在计算机变成中,整数可以通过十进制,二进制,十六进制,八进制来表示

1.十进制
基数:0,1,2,3,4,5,6,7,8,9
进位:逢十进一
位权:123 = 100+20+3=1*10**2+2*10**1+3*10**0
2.二进制   bin(数字)
基数:0 , 1
进位:逢二进一
位权:0011001=1*2**0+0*2**1+0*2**2+1*2**3+1*2**4=25(十进制)
3.八进制   oct(数字)
基数:0,1,2,3,4,5,6,7
进位:逢八进一
位权:7654321=1*8**0+2*8**1+3*8**2+4*8**3+5*8**4+6*8**5+7*8**6=2054353(十进制)
4.十六进制  hex(数字)
基数:0,1,2,3,4,5,6,7,8,9,a(10),b(11),c(12),d(13),e(14),f(15)
进位:逢十六进一
位权:abc=12*16**0+b*16**1+a*16**2

程序中怎么表示不同进制的数

在程序中直接写的数字都是十进制
二进制; 0b11001010 =>202
八进制:0o1234567 =>2739128
十六进制:0x1234567890abcdef => 1311768467294899695

num=110
num1=0b11001010
num2=0o12345670
num3=0x1234567890abcdef
print(num,num1,num2,num3)
print(bin(800))
print(oct(800))
print(hex(800))

位运算

计算机存储的时候只能存储数据的补码,计算机在运算的时候是用
补码运算,将数据从计算机中读出来看结果展示的是原码

原码:符号位+真值
说明:
符号位:最高位是0表示正数,用1表示负数
真值:去掉正负,数字的二进制的值
100的原码:01100100
-100的源码:11100100

反码:
负数原码的符号位不变,其余的位数取反,
正数的反码就是本身
-100的反码:10011011
100的反码:01100100

补码:
正数的补码还是原码
负数的补码就是反码+1
100的补码:01100100
-100的补码:10011100

print(bin(-50))
原码:1110010
反码:1001101
补码:1001110

为什么要存补码
因为计算机中只有加法器,没有减法器

位运算: &(按位与运算) |按位或运算,~ 按位取反,^ 按位异或

>>右移,<<左移

按位与运算 - 一个数如果和1与会保留这个数,和0与会置0.
数字1 & 数字2 -- 每位上的书都为1,结果都为1,只要有0就是0
0111 & 1101 --> 0101(补码)
3 & 2  --》0011 & 0010 -->0010  
应用:判断一个数的奇偶性(如果一个数的最低位是1就是奇数,否则就是偶数)
num & 1 == 1 --> 奇数
num & 1 == 0 --> 偶数
| 按位或运算 :只要有1 结果就是1 ,两个都为0 结果才是0.
1 | 1--1
1 | 0--1
0 | 1--1
0 | 0--0
特点:任何数和1或都会置 1
print(3 | 2) #0011 | 0010 = 0011(补码)
print(-3 | -2) # 1101 | 1110 = 1111(补码)-》1110-》1001-》-1
~按位取反:
~数字 ----将数字每一位取反
~1 = 0
~0 = 1
print(~~3)
^按位异或
数字1 ^ 数字2 :相同为0 ,不同为1
1^1=0
0^0=0
1^0=1
0^1=1
应用:加密

print(3^2)  # 0011 ^ 0010 = 0001 --->1

左移和右移
数字1 << n:数字1左移 n 位,相当于数字12n
数字2 >> n:数字2 右移n位,相当于 数字1 // 2
*n

print(4<<1) # 4*2**1
print(-3<<2)# -3*2**2
print(5>>1) # 5//2**1
print(5>>2) # 5//2**2

相关文章

  • day-07 总结

    进制 在计算机变成中,整数可以通过十进制,二进制,十六进制,八进制来表示 程序中怎么表示不同进制的数 在程序中直接...

  • day-07 作业

    1.已知⼀个列表,求列表中⼼元素。 2.已知⼀个列表,求所有元素和。 3.已知⼀个列表,输出所有奇数下标元素。 4...

  • Day-07 练习

    1.使用位运算判断一个数是否是奇数 2.表达式0x13&0x17的值是(18 ) 3.若x=-20,y=3则x&y...

  • day-07 作业

    1.使用位运算判断一个数是否是奇数 2.表达式0x13&0x17的值是(19 ) 3.若x=-20,y=3则x&y...

  • Day-07 preview

    元组 tuple[tʌpl] Python 的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表...

  • 日更39/100:原因不一定在结果附近

    原因不一定在结果附近 ——精听《刘润·商业洞察力30讲》&精读《系统之美》DAY-07 《刘润·商业洞察力30讲》...

  • [Python] (Day-07) - 列表

    1、列表是最常用的 Python 数据类型 2、列表中的每个元素都分配一个数字( 它的位置,或索引),第一个索引是...

  • [JavaScript] (Day-07) - Iterable

    JavaScript 中的默认对象表示方式为{...},类似于iOS中的 Dictionary 数据结构,即都用键...

  • Day-07 复盘日

    一、回顾目标 1、回顾前6天所学知识并重新学习视频课件找出还未掌握的知识点 2、重新学习虞莹老师分享的《学会这三点...

  • day-07 容器类型(作业)

    第一题,已知列表,求其中心元素 第二题,已知列表,求其所有元素和 第三题,已知列表,输出所有奇数下表元素 第四题,...

网友评论

      本文标题:day-07 总结

      本文链接:https://www.haomeiwen.com/subject/zrttrqtx.html