美文网首页
Day03学习内容

Day03学习内容

作者: Heyjoky | 来源:发表于2018-09-27 18:05 被阅读0次

    进制

    计算机在存储数字的时候都是以二进制形式存的。
    十进制,十六进制,八进制,二进制
    

    a.十进制

    基数:0123456789,进位:逢十进一
    

    b.二进制

    基数:0,1;进位:逢二进一
    

    c.八进制

    基数:01234567;进位:逢八进一
    

    d.十六进制

    基数:0123456789abcdef;进位:逢十六进一
    

    进制之间的转换

    其他进制转换成十进制:每位数乘以对应次方数
    十进制转其他进制:取余数法,除进制取余数直到商为零,由上至下,然后倒过来写
    二进制转八进制:每三位二进制转成一位八进制
    八转二:一位八进制转三位二进制
    二进制转十六进制:每四位二进制转化成一位十六进制
    十六转二:一位十六进制转四位二进制
    

    Python对进制支持

    Python支持二进制,八进制,十进制,十六进制
    十进制:直接写的数字都是十进制
    二进制:需要加前缀:0b,后面的基数必须满足二进制范围
    八进制:需要加前缀:0o,基数不超过7
    十六进制:需要加前缀:0x,基数不超过f
    

    转化函数

    bin(整数):把括号内的整数转化成二进制
    oct(整数):把括号内的整数转换成八进制
    hex(整数):把括号内的整数转换成十六进制
    

    原码反码与补码

    计算机内存的最小单位是位,两个状态,8位=一个字节
    最高位是符号位,正数符号位为0,负数符号位为1
    
    原码:整数数字的二进制形式
    
    正数的反码,补码是他本身
    
    负数反码就是一个数的符号位不变,其他位置上的数取反
    负数的补码是它的反码加1
    
    Q:为什么计算机存储数据的时候存补码?
    A:因为硬件只能做加法不能做减法,对负数的加法有问题
    

    位运算

    运算符:&按位与,|按位或,异或,取反,左移,右移
    

    按位与&:

    数字一&数字二,两个数字的二进制数都为1才是1,否则为零
    作用:让指定位置上的值保留,让指定位上的数置零
    

    按位或|:

    数字一|数字二,两个数字的二进制数只要有一个为1,结果就为1
    

    异或^:

    数字一^数字二,两个数字的二进制数不同为1,相同为0
    

    取反~:

    ~数字,数字的二进制数每一位取反
    

    左移:

    数字<<位数,将数字原码左移指定位数,符号位不变,
    在右边正数用0补齐,负数用1补齐。
    规律:左移n位,则乘2^n
    直接乘2的n次,速度快
    

    右移:

    数字>>位数,将数字原码右移指定位数,符号位不变,
    在符号位右边正数用0补齐,负数用1补齐。
    规律:右移n位,则除2^n(只适用于正数)
    

    字符串

    字符串str

    概念:在Python中通过""或''引起来的字符集就是字符串
    字符串中引号中的字符集就是由各种不同的字符组成的
    

    Unicode编码

    Python中的字符串的字符采用的是Unicode编码
    Unicode通过两个字节对一个字符进行编码,同时包含ASCII表。
    chr(数字):获取数字在Unicode表中对应的字符,返回一个只有一个字符的字符串
    ord(只有一个字符的字符串):获取该字符在Unicode表中对应的编码
    可以直接在字符串中写字符对应的编码值,格式:/u+十六进制的编码值
    

    转义字符(适用于所有语言)

    一些特殊功能和具有特殊意义的字符直接放在字符串的引号中无效,需要通过反斜杠来转义
    换行:\n
    制表符:\t
    在字符串中打出引号\'
    打出\:\\
    

    相关文章

      网友评论

          本文标题:Day03学习内容

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