计算机底层原理——如何存储数据、常见的CMD命令

  • CMD命令:

    cd 切换目录 cd \
    cd ..    返回上一级目录
    dir 查看当前目录下的文件列表
    ping 测试网络连通性
    ipconfig 查看网卡信息ip地址等
    ipconfig /all
    systeminfo 系统信息   

  • 快捷运行:运行窗口执行

    cmd 打开dos命令窗口
    calc 打开计算器
    mspaint 打开画图板
    notepad 打开记事本
    regedit 打开注册表
    control 打开控制面板
    services.msc 打开服务列表
    taskmgr 打开任务管理器,等同于右键在任务栏选择任务管理器

2.7 计算机如何存储数据

计算机世界中只有二进制。那么在计算机中存储和运算的所有数据都要转为二进制。包括数字、字符、图片、声音、视频等。

2.7.1 进制(了解)

  1. 进制分类与表示方式

    (1)十进制: 数字组成:0-9 进位规则:逢十进一

    System.out.println(10);//10表示十进制的10,输出十进制结果10

    (2)二进制: 数字组成:0-1 进位规则:逢二进一

    表示方式:以0b或0B开头

    System.out.println(0B10);//0B10表示二进制的10,输出十进制结果2

    十进制的256,二进制:100000000,为了缩短二进制的表示,又要贴近二进制,在程序中引入八进制和十六进制

    (3)八进制:很少使用 数字组成:0-7 进位规则:逢八进一

    表示方式:以0开头

    System.out.println(010);//010表示八进制的10,输出十进制结果8

    与二进制换算规则:每三位二进制是一位八进制值

    (4)十六进制 数字组成:0-9,a-f或A-F 进位规则:逢十六进一

    表示方式:以0x或0X开头

    System.out.println(0X10);//0x10表示十六进制的10,输出十进制结果16

    与二进制换算规则:每四位二进制是一位十六进制值

  2. 进制的转换

    十进制二进制八进制十六进制
    0000
    1111
    21022
    31133
    410044
    510155
    611066
    711177
    81000108
    91001119
    10101012a或A
    11101113b或B
    12110014c或C
    13110115d或D
    14111016e或E
    15111117f或F
    16100002010
  • 任意进制转十进制

    十进制的本质:123=1*10^2+2*10^1+3*10^0

    系数:就是每一个位上的数值。上例中的1,2,3
    基数:x进制的基数就是x。上例中的10
    权:对每一个位上的数据,从右到左,并且从0开始编号,对应的编号就是该数据的权。上例中的0,1,2

    任意进制转十进制:系数*基数^权次幂之和。

  • 十进制转任意进制:

    十进制数除以基数取余,直到商为0,余数反转。

    十进制转二进制:十进制整数6除以基数2,倒序取余数,结果为二进制数110

     ​​​​

  • 快速转换方法:

    • 二进制转十进制:

      8421码:从右边开始依次是2的0次,2的1次,2的2次。。。。

    • 二进制数据转八进制数据

      从右边开始,3位二进制对应1位八进制

    • 二进制数据转十六进制数据

      从右边开始,4位二进制对应1位十六进制

2.7.2 计算机存储单位

  • 位(bit):是数据存储的最小单位,也就是一个二进制位。其中8 bit 就称为1个字节(Byte)。

  • 字节(Byte):是计算机信息技术用于计量存储容量的一种计量单位,1字节等于8bit。

  • 转换关系:

    • 8 bit = 1 Byte

    • 1024 Byte = 1 KB

    • 1024 KB = 1 MB

    • 1024 MB = 1 GB

    • 1024 GB = 1 TB

2.7.3 二进制数据存储(理解)

计算机底层都是使用二进制进行数据的存储的。不同类型的数据,存储方式也有不同。

  1. 整数存储

    计算机底层存储整数并不是把整数转换为二进制直接存储,而是以二进制的补码形式进行存储。要了解补码还要知道原码和反码:

    原码:把十进制转为二进制,然后最高位设置为符号位,1表示负数,0表示正数。

    正整数的原码、反码和补码都一样,称为三码合一。

    负整数的反码和补码表示为:

    反码:负整数的反码在其原码的基础上,符号位不变,其余位取反(0变1,1变0)

    补码:负整数的补码为其反码基础上+1

    例如:用1个字节的二进制表示一个数
    ​
    25 ==> 原码  0001 1001 ==> 反码  0001 1001 -->补码  0001 1001
    -25 ==>原码  1001 1001 ==> 反码  1110 0110 ==>补码  1110 0111

    一个字节可以存储的整数范围

    分为两种情况:

    (1)无符号:不考虑正负数

    0000 0000 ~ 1111 1111 ==> 0~255

    (2)有符号:-128~127

    0000 0000 ~ 0111 1111 ==> 0~127
    ​
    1000 0001 ~ 1111 1111 ==> -127 ~ -1 (补码形式存储)
    ​
    1000 0000  ==> -128     特殊值,最高位既是符号位,又是数值位
  2. 如何存储小数(了解)

    • 为什么float(4个字节)比long(8个字节)的存储范围大?

    • 为什么double(8个字节)比float(4个字节)精度范围大?

    • 为什么float和double不精确

    因为float、double底层也是二进制,先把小数转为二进制,然后把二进制表示为科学记数法,然后只保存:

    ①符号位②指数位③尾数位

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值