机内代码及运算

1 数的进制

十进制:0-9 如:(123)D 、(123)10
二进制:0 1,如:(1001)B、(1001)2
八进制: 0-7,如:(301)O
十六进制:0-9 A-F,如:(19E)H、(19E)16
进制的转换
1 十进制转2进制 ,除2取余法(图)
2 二进制转十进制,按权展开求和(图)

2 原码、反码、补码、移码

1 最高位表示符号位(8位):取值范围-128--+127(无符号位则:0-255)
2 正数原码、反码、补码、移码=补码符号位取反
3 负数反码为符号位以外,其余各位按位取反;补码=反码+1;移码=补码符号位取反
[[x]]=[x]

3 定点数

1 定点数分为定点小数(纯小数)和定点整数

浮点数

N=M*Re

  • 1 M称为尾数,R称为基数,e为阶码(指数)
  • 2 规格化浮点数:加大阶码,使小数点左侧仅有一位
4 校验码

1 码距:任意两个合法的编码之间二进制位数
码距越小,抗错误性能力越低
2 编码效率:合法码字占所有码字的比率

3 奇偶校验

1 奇校验:被传输有效数据“1”的个数为奇数个,校验位填“0”,否则填“1”
2 偶校验:为偶数个,校验位填0,反之如上
3 缺点:无法判断哪位错误,无法检验多位错误
4 使用:串口通信中

4 海明码
  • 1 奇偶校验的扩充,多位校验码
  • 2 当出现两位错误,仅能查询;一位错误,可纠正
  • 3 可查错误位数:<=码距-1;可纠错误位数:<码距/2
  • 4 原理:数据中加入几个校验码,码距均匀拉大,某一位出错,引起若干校验位变化
  • 5 海明不等式
    2k-1>=m+k
    k为校验码个数,可表示2k种信息,除一个全对外,还有 2k-1个,若2k-1>=m+k(m+k为编码后的长度),理论上就可以判断出错位
  • 6 海明码的编码规则
    1)校验位依次放在第2i位(i=0,1,2...),其余位为信息位。
    2)信息位的位数为参与校验它的校验位的位数之和(如:7=4+2+1)
    3)校验位为参与组成它的信息位从左到右相亦或(不同为真,相同为假)

5 循环冗余校验码 CRC

1 广泛在网络通信和磁盘存储时使用
2 生成多项式:多项式最高位n次幂,转换为2进制有n+1位
3 编码组成:R位的校验码连接在k位信息码之后
4 CRC生成

  • 1 根据多项式将信息码左移n位(R位),补0
  • 2 将移位后的信息码与生成多项式产生的二进制进行模2运算(异或)
  • 3 将2的余数作为校验码嵌入信息位左移后的空间

5 CRC的纠错能力取决于K和R

  • K>>R,提高编码效率,此时仅检错
  • 一般来说,R位生成多项式可检测出所有双错、奇数位错和突发错位小于或等于R的突发错误

中央处理器

计算器硬件组成:控制器、运算器、存储器、输入设备、输出设备

  • 1 运算器
    算术逻辑单元/ALU,对数据进行算术运算(+ -...)和逻辑运算(与或...)
    1)加法器/累加器:专门存放算数或逻辑运算的操作数运算结果的寄存器。
    2)程序状态计数器:存放状态信息和控制信息
  • 2 控制器
    分析和执行指令
    1)指令寄存器:保存当前正执行的指令
    2)指令译码器:分析指令操作码作用(如1+2中的加)
    3)程序计数器:存放下一条指令的地址
    4)定时与控制电路
    5)堆栈和堆栈指针
  • 3 计算机的分类
    Flynn、冯式分类法
    1)Flynn:根据指令流、数据流、多倍性分类

输入输出控制方式

1)程序I/O控制方式(已淘汰)

又称程序查询方式
应用于早期无中断计算机,采用忙等方式(空闲让进,忙则等待)

2)中断控制方式(中低速,如打印机)

空闲让进,忙则等待,让权等待,每次中断仅传输一个字符

3)直接存储器访问DMA方式(目前常用)

数据传输的基本单位:数据块(若干字节)
数据由设备直接送入内存
提高了CPU与I/O设备的并行操作程度

4)I/O通道控制方式(大型设备)

1 I/O通道是一种特殊的处理机
2  I/O通道指令类型单一(只能执行I/O指令,控制I/O操作),不需要CPU参与I/O通道没有自己的内存,与CPU共享
3 I/O通道类型:字节多路通道数组选择通道数组多路通道

流水线技术

  • 1 概念:在程序执行时,多条指令重叠进行操作的一种任务分解技术(比如我边让洗衣机洗衣服边写作业)
  • 2 计算执行时间
    将任务分为N个子任务,每个子任务需要t时间,则完成需要N x t
    1)传统完成k个任务:kNT
    2)采用流水线技术:Nt+(k-1)t
    3)若每个子任务所需时间不同,则时间((k-1)t)取决于执行顺序中最慢的那一个
  • 3 流水线的吞吐率
    单位时间内流水线所完成的任务数量或输出的结果数
    TP=n/Tk
    1ns=10-9s
    n为任务数,Tk为处理完成n个任务所需的时间
  • 4 加速比
    不采用流水线的执行时间/采用流水线的时间
  • 5 影响流水线的主要因素
    1)转移指令:(go to)前面指令执行完成前,流水线无法确定下一条指令地址,出现流水线断流
    2)共享资源访问的冲突:后一条指令需要使用的数据与前一条指令发生冲突,或相邻两条指令用了相同的寄存器
    3)响应中断:有中断请求时,流水线会停止。响应方式:
    精确断点法:立即响应中断
    不精确断点法:流水线中的指令继续执行,但不再添加新指令

指令系统

  • 1 概念:计算机所能执行的全部指令的集合,描述了计算机内部的控制信息和“逻辑判断能力”
  • 2 一条指令:操作码和地址码/操作数
  • 3 类型:
    1)立即寻址:地址码为一个数(为1+2中的1)
    2)直接寻址:地址码为一个地址,要根据此地址去内存中寻址
    3)间接寻址:地址码为一个地址,根据地址码中的地址去取这个数
    4)寄存器寻址:地址码为寄存器地址,寄存器速度快于内存
    5)寄存器间接寻址:地址码为寄存器地址,根据寄存器地址去找出数
  • 4 CISC与RISC
    CISC:复杂指令集计算机
    1)指令数量多,无则添加,数量庞大
    2)指令使用频率相差悬殊,80%的时候只使用20%的指令
    3)支持很多寻址方式
    4)变长的指令,指令长度不固定
    5)指令可对存储器单元中数据直接进行处理
    RISC:精简指令集计算机,对指令数目和寻址方式做精简,指令的指令周期相同,采用流水线技术
    1)指令数量少,仅选频率高的,若干条完成没有的复杂指令
    2)指令的寻址方式少,如寄存器寻址(较快)
    3)指令长度固定,格式种类少
    4)只提供了Load/Store指令访问存储器,其余操作在寄存器完成
    5)以硬布线逻辑控制为主,提高了执行速度
    6)单周期指令执行
    7)优化的编译器:使编译工作简单化

软件设计师21-计算机体系结构相关推荐

  1. 【软考-软件设计师】计算机体系结构的分类

  2. 《软件设计师》——计算机组成原理与体系结构

    任何进制转成十进制,使用按权展开法,注意小数点. 十进制转成任意进制,使用短除法. 1个字节有8个位,每位分别用二进制的0和1来表示.分为无符号数和有符号数,下面以有符号数来说明,有符号数最高位是符号 ...

  3. 【软件设计师】计算机组成原理与体系结构-Flynn分类法

    计算机组成原理与体系结构-Flynn分类法 Flynn分类法 Flynn分类法 Flynn分类法是一种计算机体系结构的分类方法.通过这种分类方法,我们可以把常见的计算机进行分类.分类依据有两个指标,分 ...

  4. [架构之路-119]-《软考-系统架构设计师》-计算机体系结构 -1- 基本原理(体系结构、指令系统与流水线、层次存储)

    第9章 计算机体系结构 9.1 什么是计算机体系结构 计算机系统结构(Computer Architecture)也称为计算机体系结构,它是由计算机结构外特性,内特性,微外特性组成的.经典的计算机系统 ...

  5. 软件设计师笔记----计算机组成与结构

    --------------------------- 海明码:构成由m个数据位 (即报文)和r个冗余位(校验位)构成 总长度为n 则 n= m+r 海明码的码距最小为2n+1 海明码距:它是指两个码 ...

  6. 【软件设计师21天-考点整理】4)计算机系统构成及硬件基础知识

    数的表示 R进制转十进制:使用按权展开法 将R进制数的每一位数值用n形式表示; 幂的底数是R例如:二进制底数R就是2 指数为kik与该位和小数点之间的距离有关;当该位位于小数点左边,k值是该位和小数点 ...

  7. 【软件设计师21天-考点整理】2)计算机系统构成及硬件基础知识

    数的表示 R进制转十进制:使用按权展开法 将R进制数的每一位数值用n形式表示; 幂的底数是R例如:二进制底数R就是2 指数为kik与该位和小数点之间的距离有关;当该位位于小数点左边,k值是该位和小数点 ...

  8. 【软件设计师21天-考点整理】6)计算机系统构成及硬件基础知识

    数的表示 R进制转十进制:使用按权展开法 将R进制数的每一位数值用n形式表示; 幂的底数是R例如:二进制底数R就是2 指数为kik与该位和小数点之间的距离有关;当该位位于小数点左边,k值是该位和小数点 ...

  9. 【软件设计师21天-考点整理】3)计算机系统构成及硬件基础知识

    数的表示 R进制转十进制:使用按权展开法 将R进制数的每一位数值用n形式表示; 幂的底数是R例如:二进制底数R就是2 指数为kik与该位和小数点之间的距离有关;当该位位于小数点左边,k值是该位和小数点 ...

  10. 【软考-软件设计师】计算机存储器的分类

最新文章

  1. 阿里二面:redis分布式锁过期了但业务还没有执行完,怎么办
  2. Waymo高管指责媒体夸大自动驾驶的商业化前景
  3. Using the New MySQL Query Profiler
  4. C++实现字符串数组作为函数的参数的反序输出
  5. 美团优选、多多买菜等五家社区团购被罚650万元;打车手机越贵,接单车型越贵;微软推出低代码语言 Power Fx | 极客头条...
  6. Dell™ PowerEdge™ R710机架式服务器旨在成为虚拟化企业的构建块
  7. 2. Linear Model
  8. Composite模式
  9. 校园天翼客户端常见错误码
  10. 完美数的算法设计(C语言)
  11. 店宝宝:京东重新进军社区团购
  12. ARP报文目的MAC为什么不是广播地址?
  13. uniapp h5 腾讯地图根据经纬度显示位置,并打开手机导航
  14. 官网---2019年上半年软考报名时间
  15. 二战计算机技术,重庆大学超强二战跨考计算机技术专业经验,学习方法
  16. a19_Python文件I/O---学习笔记
  17. torch.bmm()验证
  18. ESPnet-SE 开源工具介绍
  19. idea本地项目上传至远程仓库及一些常见问题的解决办法
  20. R语言[]和[[]]操作的区别

热门文章

  1. 直接让web服务运行在80端不行吗,为什么要用nginx反向代理?
  2. 公司电脑可以做无盘系统吗?怎么优化速度?
  3. 你用苹果手机多长时间清理一次内存,怎么清理?
  4. LaTex ——P3 中文处理办法
  5. LL(1)分析表的构造
  6. JDK、JRE、JVM的区别及JavaSE、JavaEE和JavaME的区别?
  7. aws rds监控慢sql_AWS RDS SQL Server入门
  8. Python脚本可在Microsoft Excel中格式化数据
  9. json序列化定义类型jsckson
  10. ASP.NET MVC4中的异步控制器