计算机系统基础 - 数值和编码

C语言中的数据类型

  • 无符号整数类型 : unsigned int
  • 带符号整数类型 : int
  • 浮点数类型 : float, double

信息的二进制编码

  • 机器级数据分两大类

    • 数值数据 : 无符号整数, 带符号整数, 浮点数
    • 非数值数据 : 逻辑数 (truefalse包括位串), 西方字符汉字
    • 计算机内部所有信息都用二进制进行编码
  • 真值机器数

    • 机器数 : 用 0 和 1 编码的计算机内部的 0 1 序列
    • 真值 : 真正的值, 即 : 现实中带正负号的数

数值数据的表示

数值数据表示的三要素

进位计数制

  • 十进制, 二进制, 十六进制, 八进制及其互相转换

定, 浮点表示

  • 解决小数点问题
  • 定点整数, 定点小数
  • 浮点数

定点数的编码

  • 解决正负号问题
  • 原码, 补码, 反码, 移码

十进制计数制

  • 十进制数, 每个数位可用十个不同符号 0,1,2…,9来表示, 每个符号处在十进制数中不同位置时, 所代表的数值不一样
    • 例如 : 258.62代表的是
    • 2×102 + 5×101 + 8×100 + 6×10-1 + 2×10-2
    • 10称为基数, 它代表每个数位上可以使用的不同数字符号个数, 10i称为第i为上的权
    • 运算时, 逢十进一

二进制计数制

  • 二进制数, 每个数位可以用两个不同符号0和1表示, 每个符号处在不同位置时, 所代表的数值不一样
    • 例如 , 100101.01 代表的值是 :
    • 1×25 + 0×24 + 0×23 + 1×22 + 0×21 + 1×20 + 0×2-1 + 1×2-2
  • 2称为基数, 它代表每个数位上可以使用的不同数字符号个数. 2i 称为第i位上的权.
  • 运算时, 逢二进一
  • 后缀 B 表示二进制数, 如 01011010B

八进制

  • 基本符号为 : 0, 1, 2, 3, 4, 5, 6, 7
  • 用后轴 O 表示

十六进制

  • 基本符号为 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
  • 用后缀 H, 或前缀 0x 表示

十进制数与R进制数之间的转换

  • R进制数 => 十进制数
    按权展开
    • 例 : 10101.01 = 1×24 + 1×22 + 1×20 + 1×2-2 = 21.25
    • 例 : 307.6 = 3×24 + 1×24 + 1×24

十进制与二进制数之间的转换

  • 十进制数 => 二进制数, 再将二进制转换为16或8进制

    • 整数部分和小数部分分别转换
  • 整数 : 除基取余, 上右下左

  • 小数 : 乘积取整, 上左下右
    在这里插入图片描述

定点数和浮点数

  • 计算机中只能通过约定小数点的位置来表示.
    • 小数点位置约定在固定位置的数称为定点数
    • 小数点位置约定为可浮动的数称为浮点数
  • 任何实数都可以这样表示 : X = (-1)s × M × RE
    • 其中 :
      • S取值为0或1 (为0时表示正数, 为1时表示负数), 用来决定数 X的符号;
      • M是一个二进制定点小数, 称为数 X的尾数;
      • E 是一个二进制定点整数, 称为数 X的阶或指数;
      • R 是基数, 可以为2, 4和16等.
  • 计算机中只有表示S, M和E三个信息, 就能确定X的值. 这称为浮点数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值