软考知识点

二进制(B)、八进制(O)、十进制(D)、十六进制(H)

一.基本概念

  • 二进制 :基数为2,数码0、1,后缀B(如101B)。

  • 八进制 :基数为8,数码0-7,后缀O(如76O)。

  • 十进制 :基数为10,数码0-9,后缀D(常省略,如123)。

  • 十六进制 :基数为16,数码0-9、A-F(A=10, B=11, ..., F=15),后缀H(如3FH)。

二、核心转换方法

1. 十进制 → 其他进制(R进制)

方法:除R取余,逆序排列 (整数部分);乘R取整,顺序排列(小数部分,若涉及)。

  • 整数转换示例 :十进制25转二进制、八进制、十六进制

    • 转二进制(R=2):

      25 ÷ 2 = 12 余 112 ÷ 2 = 6 余 06 ÷ 2 = 3 余 03 ÷ 2 = 1 余 11 ÷ 2 = 0 余 1

      逆序余数:11001B

    • 转八进制(R=8):

      25 ÷ 8 = 3 余 13 ÷ 8 = 0 余 3

      逆序余数:31O

    • 转十六进制(R=16):

      25 ÷ 16 = 1 余 91 ÷ 16 = 0 余 1

      逆序余数:19H

2. 其他进制(R进制)→ 十进制

方法:按权展开求和 (权为R^n,n从0开始,整数部分从右往左数,小数部分从左往右数)。

  • 示例1 :二进制11001B转十进制

    1×2^4 + 1×2^3 + 0×2^2 + 0×2^1 + 1×2^0 = 16 + 8 + 0 + 0 + 1 = 25D

  • 示例2 :八进制31O转十进制

    3×8^1 + 1×8^0 = 24 + 1 = 25D

  • 示例3 :十六进制19H转十进制

    1×16^1 + 9×16^0 = 16 + 9 = 25D

3. 二进制 ↔ 八进制/十六进制(快捷转换)

利用分组法 (因为8=2^316=2^4,二进制位数与八/十六进制位数有固定倍数关系):

  • 二进制 → 八进制 :从右往左,每3位二进制一组,不足补0,每组对应1位八进制数码。

    示例:11001B→ 补0为011 001→ 每组转八进制:3 131O

  • 二进制 → 十六进制 :从右往左,每4位二进制一组,不足补0,每组对应1位十六进制数码。

    示例:11001B→ 补0为0001 1001→ 每组转十六进制:1 919H

  • 八进制/十六进制 → 二进制:反向操作,1位八/十六进制数码对应3/4位二进制数码。

    示例:31O3=0111=001011001B19H1=00019=100100011001B

4. 八进制 ↔ 十六进制

间接转换:通过二进制或十进制中转(优先用二进制更快捷)。

示例:31O11001B19H

三、常见软考考点

  1. 快速计算 :如2^n对应的十进制值(2^10=10242^16=65536等,常考内存容量计算)。

  2. 小数转换 :若涉及小数部分(如0.625D转二进制),用"乘2取整,顺序排列":

    0.625×2=1.25 取整10.25×2=0.5 取整00.5×2=1.0 取整10.101B

  3. 负数表示 :原码、反码、补码(初级软考可能涉及基础概念,如+5-5的补码表示)。

    • 补码规则:正数补码=原码;负数补码=反码+1(反码=原码符号位不变,其余位取反)。

      示例:8位二进制中,-5的原码10000101→ 反码11111010→ 补码11111011

四、练习例题

  1. 十进制42转二进制、八进制、十六进制:

    • 二进制:101010B;八进制:52O;十六进制:2AH
  2. 十六进制3E7H转十进制:

    3×16² + 14×16¹ +7×16⁰ = 768 + 224 +7 = 999D

  3. 二进制101101.11B转十进制:

    1×2^5 +0×2^4 +1×2^3 +1×2^2 +0×2^1 +1×2^0 +1×2^-1 +1×2^-2 = 32+8+4+1+0.5+0.25=45.75D

五、原码(True Form)

定义:符号位+数值的绝对值(最简单的编码)。

  • 正数:符号位0+ 数值二进制(如+5的8位原码:00000101)。

  • 负数:符号位1+ 数值绝对值的二进制(如-5的8位原码:10000101)。

特点

  • 直观,但不利于计算机运算(如+5 + (-5)的原码相加:00000101 + 10000101 = 10001010,结果为-10,错误)。

  • 存在+0-0两种零表示(8位原码中00000000+010000000-0)。

六、反码(One's Complement)

定义:原码的"符号位不变,数值位取反"。

  • 正数:反码=原码(如+5的8位反码:00000101)。

  • 负数:符号位1+ 数值位逐位取反(0变1,1变0,如-5的原码10000101→反码11111010)。

特点

  • 解决了原码部分运算问题,但仍存在+0-0(8位反码中00000000+011111111-0)。

  • 运算时需注意"循环进位"(若最高位有进位,需加到最低位,如+5 + (-5)的反码相加:00000101 + 11111010 = 11111111,即-0)。

七、补码(Two's Complement)

定义 :反码+1(计算机中唯一实际使用的有符号数编码,解决了原码、反码的缺陷)。

  • 正数:补码=原码=反码(如+5的8位补码:00000101)。

  • 负数:反码+1(如-5的反码11111010+1 → 补码11111011)。

快速计算负数的补码

原码符号位不变,从右往左找到第一个1,其右侧数值位不变,左侧数值位取反(如-5原码10000101→找到右数第1个1在第1位,右侧无位,左侧数值位00001取反为11110→补码11111011)。

特点

  • 零唯一 :8位补码中0只有00000000-0的补码11111111 +1 = 100000000,溢出后取8位为00000000)。

  • 运算直接 :加减法统一为加法(无需判断符号,如+5 + (-5)的补码相加:00000101 + 11111011 = 100000000,溢出舍去高位,结果为00000000(0))。

  • 表示范围更大 :n位补码的表示范围为-2^(n-1) ~ 2^(n-1)-1(如8位补码:-128 ~ +127,而原码/反码是-127 ~ +127)。

八.中央处理器

  • 组成:运算器(ALU、AC、DR、PSW)+ 控制器(PC、IR、ID、时序)+ 寄存器组

  • 功能:指令控制、操作控制、时间控制、数据加工、中断处理

  • 性能指标:主频、时钟周期、CPI、IPS、CPU时间 = 指令数 × CPI × 时钟周期

  • 流水线

    • 分段并行(取指→译码→执行→写回)

    • 周期 = 最慢段耗时

    • 执行 n 条总时间 = (段数 + n - 1) × 周期

  • 易混:PC(下条指令地址)≠ IR(当前指令);PSW 存状态标志;Cache 属存储系统但常联动考

九.子网划分

  • IP 地址 :点分十进制,32 位二进制;由网络位 + 主机位组成

  • 默认分类

    • A 类:0.0.0.0~127.255.255.255,掩码 255.0.0.0(/8)

    • B 类:128.0.0.0~191.255.255.255,掩码 255.255.0.0(/16)

    • C 类:192.0.0.0~223.255.255.255,掩码 255.255.255.0(/24)

  • 子网划分核心 :借主机位子网位,掩码变长(如 /24→/26)

  • 子网掩码作用 :1 为网络位,0 为主机位;与 IP 按位与得子网地址

  • 关键公式

    • 子网数 = 2^借位位数(去掉全0全1时可减少)

    • 每子网主机数 = 2^剩余主机位 - 2(去掉网络地址和广播地址)

  • 地址计算

    • 块大小 = 256 - 掩码某段值(如 255.255.255.192 → 块 64)

    • 子网地址 = IP 所在块起始值

    • 广播地址 = 下一子网起始 - 1

    • 可用主机 = 子网地址+1 ~ 广播地址-1

  • CIDR:无类域间路由,形如 IP/前缀长度(如 192.168.1.0/26)

  • 常考:给定 IP+掩码求网络地址/广播/可用范围;按主机数或子网数算掩码

相关推荐
源远流长jerry2 小时前
Linux 网络收包机制:从网卡到 Socket 的完整路径
linux·运维·服务器·网络·网络协议·tcp/ip
qq_364371722 小时前
基于 Docker 容器化环境配置
运维·docker·容器
我命由我123453 小时前
Windows 操作系统 - Windows 查看架构类型
运维·windows·笔记·学习·系统架构·运维开发·系统
上海云盾安全满满3 小时前
选择接入高防IP后,源机是否还要带有防护
网络·网络协议·tcp/ip
goyeer3 小时前
【ITIL4】34服务实践 - 服务请求管理
运维·it·数字化·信息化·itil·信息化企业管理
运维全栈笔记4 小时前
基于Docker的MinIO单机部署与功能测试指南
运维·docker·容器
杰 .4 小时前
Linux工具使用
linux·服务器
Gc9umsbL14 小时前
零基础学Linux:21天从“命令小白”到独立部署服务器
linux·运维·服务器
测试员周周4 小时前
【AI测试功能5】AI功能测试的“黄金数据集“构建指南:从0到1搭建质量评估体系
运维·服务器·开发语言·人工智能·python·功能测试·集成测试