首页 > 其他分享 >计算机组成原理(day2)

计算机组成原理(day2)

时间:2022-12-07 21:36:36浏览次数:46  
标签:右移 存储 计算机 高位 补码 day2 移码 原理 运算

计算机组成原理(day2)_移位乘法

整型

移码

定义:移码是补码符号位取反。

计算机组成原理(day2)_取模_02

移码以unsigned类型,由上到下真值增大。

计算机组成原理(day2)_移位乘法_03

原反补移码的作用

两正数二进制相加无需变化

一正一负需转化为减法,但硬件设计难以实现,可以通过取模运算(取余)实现。

实例

十点的时钟拨至七点。

计算机组成原理(day2)_移位乘法_04

在取模12的情况下,-3与+9运算无区别,最终都得到了余数7。

10-3 = 7,10+9 = 19 19/12 = 1.........7,可以认为-3与9在模12的情况下等价。

计算机以整数的补码形式存储就是为了以加法实现加减运算。

移位运算

算数移位

计算机组成原理(day2)_移位乘法_05

计算机组成原理(day2)_移位乘法_06

右移时,右移出的位数为0,则有效数字(精度)不变,如果不为0,则会丢失精度。

计算机组成原理(day2)_移位乘法_07

补位规则满足:右移除以2,左移乘以2

逻辑移位

计算机组成原理(day2)_移位乘法_08

计算机组成原理(day2)_移位乘法_09

加减法与溢出

正负整数在计算机内均采用补码的加法运算实现。

溢出判断

原理

计算机组成原理(day2)_补码_10

方法

计算机组成原理(day2)_取模_11

乘法为与运算,加法为或运算。

符号扩展

计算机组成原理(day2)_取模_12

小节

计算机组成原理(day2)_移位乘法_13

乘法与除法

原码的移位乘法

计算机组成原理(day2)_补码_14

总结重点

​1)数值位运算

2)乘数末尾为0,乘积高位加0后右移(先加后移)乘数末尾为1,乘积高位加被乘数后右移(补0)

3)步骤2)后进行右移(补1)

5)当乘数符号位移动至乘积低位时终止

4)最终补上符号位​(异或)

补码的移位除法

思路与乘法类似,最终转化为加减交替的方法实现。

C语言中的强制类型转换

计算机组成原理(day2)_移位乘法_15

数据的存储与排列

大端存储

实例

1101  1001  0001

高位存储在低地址位,低位存储在高地址位。

每次向内存中存储时,按照地址由低到高,先存储高位,再存储低位。(压栈)

每次从内存中取出时,按照地址由低到高,先取出高位,再取出低位。(出栈)

大端存储利于人类阅读,但是每次从低地址都会取出高位,不利于机器计算。

计算机组成原理(day2)_取模_16

浮点型

计算机组成原理(day2)_补码_17

此部分可以移步至C语言相关部分,关于浮点数标准的存储。

标签:右移,存储,计算机,高位,补码,day2,移码,原理,运算
From: https://blog.51cto.com/u_15862591/5920116

相关文章

  • openstack介绍及原理
     openstack项目搭建:1、环境布署2、配置keystone服务3、配置glance服务4、配置placement服务5、配置nova服务控制节点6、配置nova服务计算节点7、配置neutron服务控制节点......
  • 计算机网络--网络层-中
    如何获取IP地址?(一个小问题)答案:静态和动态获取。静态配置:直接配置IP地址和子网掩码默认网关:某个路由器和该子网相连的接口DHCP协议:动态获取......
  • 计算机网络--网络层-上
    网络层的核心功能:转发和路由数据报网络,网络无连接服务特点:每个分组携带目的地址,每个分组独立选路,根据聚合地址寻找目的地址 虚电路网络,网络连接服务......
  • ​Docker网络实现的基本原理
    Docker的网络实现基本原理是利用了Linux的网络命令空间和虚拟网络设备,因为Linux通过在内核中进行数据复制来实现虚拟接口之间的数据转发,即发送接口的发送缓存中的数据包将......
  • Docker网络实现的基本原理
    Docker的网络实现基本原理是利用了Linux的网络命令空间和虚拟网络设备,因为Linux通过在内核中进行数据复制来实现虚拟接口之间的数据转发,即发送接口的发送缓存中的数据包......
  • 重写事件抛发接收机制原理
    ​关于js中事件侦听和抛发机制的一些基础简单重构,通过这个简单重构了解中介者模式的工作方式,以下就是要做的简单重构方案思路:创建EmitterTarget类和EmitterEvent类。Emi......
  • 计算机的原码,反码,补码
    我一直想为什么计算机中一定要规定有反码、补码?原码不能解决计算机的计算能力吗?反码,补码的出现解决哪些问题?带着这个问题,我对计算机知识进行脑补。原理因为计算机的一切都是......
  • kafka基础原理
    kafka基础原理1.topicKafka学习了数据库里面的设计,在里面设计了Topic(主题),这个东西类似于关系型数据库的表: 此时我需要获取CM的数据,那就直接监听TopicA即可。......
  • Mysql复制原理
    复制采用异步方式,效率高。 ......
  • 来啦!滤波SLAM之MSCKF原理解析与源码详解
    以下内容来自从零开始机器人SLAM知识星球每日更新内容点击领取学习资料→机器人SLAM学习资料大礼包MSCKF全称Multi-StateConstraintKalmanFilter(多状态约束卡尔曼......