计算机组成第五章 中央处理器

2024-05-09 06:04

本文主要是介绍计算机组成第五章 中央处理器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、无符号数与有符号数

在计算机中参与运算的有两种数,有符号数和无符号数

1.1 无符号数

计算机中的数放在寄存器中,通常称寄存器的位数为机器字长。无符号数就是寄存器中的每一位都可以存放数值。但如果是有符号数就要留出符号位以判断是正数还是负数。

例如机器字长若为16位,则无符号数范围:0~2^16 = 65536,有符号数范围:-(2^16))/2 ~(2^16)/2-1 = -32768~32767  (因为中间还有一个0占了正数的一个位置,所以到32767)

1.2 有符号数 

 1. 机器数与真值

我们平时说的-15,98,0都是真值,但是怎么让计算机知道一个数的正负呢,他只看得懂01看不懂正负号,因此我们用“0”表示“正”,用“1”表示“负”,这样的数就叫做机器数

 

 2.原码、补码、反码

(1)原码

x为真值,n为位数,用逗号将符号位和数值分开

正整数原码 = 0,x,小数:x

负整数原码 = 1,x,小数:1-x

(2)反码

正数的反码 = 原码

负数的反码 = 符号位不变,其余全部取反

(3)补码

正数补码 = 原码

负数补码 = 符号位不变,反码+1 

3.浮点表示

浮点数 =  符号位 + 阶码 + 尾数 

单精度:4字节 32位

双精度:8字节 64位 

 例:13/128转换成二进制定点数和浮点数,设浮点字长16位,阶码5位(含一位阶符),尾数11位(含1位数符)

1)首先把数字转换为二进制的科学计数法:

13/128 = 0.1015625 = 0.0001101000(B) = 0.1101000*2^(-11)

-11就是-3,因为是二进制

2)我们就找到了阶码-3,-3<0,所以阶符是1,即1 0011

3)尾数为1101000是正的,数符是0,即11010000000,

合起来就是1 0011 0 11010000000

所以在定点机中X[原] = X[补] = X[反] = 0.0001101000

浮点机中X[原] = 1 0011 0 11010000000 或 1,0011;0,11010000000

              X[反] = 1 1100 0  11010000000

              X[补] = 1 1101 0  11010000000 

注意:要根据符号位写补码与反码!!!!😀😀😀

4.定点运算 

4.1 移位运算 

1)左移:m<<n = m*2^n

整体左移,后面补0

16 = 11010(B),

16<<1 = 32,16<<2 = 64;

2)右移:m>>n = m/2^n

正数右移:左侧补0,负数右移左侧补1

46>>1 = 23,23>>1 = 12 

3)无符号右移:>>>

正数右移:左侧补0

负数右移:左侧补0

26>>>1 = 13;

4.2 补码加减法运算 

加减法其实就是正负数进行加的运算,所以一般都用补码进行计算。

 10+11 = 01(2+3=1):5%4

  11+11= 10(3+3=2):6%4

整数:所以其实丢掉前面那位就是取余2^(n+1)

小数:%2

4.3 溢出 

4.3.1用一位符号判断溢出

只有正数和正数、负数和负数才会溢出,所以当参加运算的两个数符号相同,结果符号又与运算数不同时记为溢出。

例:0,101+0,100=1,001 就是溢出 

-0.1000 + (-0.1000) = 1.1000 + 1.1000 = 11.0000,与参与运算的数符号位相同,所以无溢出

 

4.3.2 两位符号判断溢出 

 当两位符号位不同时表示溢出,否则不溢出

 

4.4 乘法运算

 

这篇关于计算机组成第五章 中央处理器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/972582

相关文章

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

计算机视觉工程师所需的基本技能

一、编程技能 熟练掌握编程语言 Python:在计算机视觉领域广泛应用,有丰富的库如 OpenCV、TensorFlow、PyTorch 等,方便进行算法实现和模型开发。 C++:运行效率高,适用于对性能要求严格的计算机视觉应用。 数据结构与算法 掌握常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、动态规划等),能够优化代码性能,提高算法效率。 二、数学基础

java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频)

这是什么系统? 资源获取方式在最下方 java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频) 停车管理信息系统是为了提升停车场的运营效率和管理水平而设计的综合性平台。系统涵盖用户信息管理、车位管理、收费管理、违规车辆处理等多个功能模块,旨在实现对停车场资源的高效配置和实时监控。此外,系统还提供了资讯管理和统计查询功能,帮助管理者及时发布信息并进行数据分析,为停车场的科学

《计算机视觉工程师养成计划》 ·数字图像处理·数字图像处理特征·概述~

1 定义         从哲学角度看:特征是从事物当中抽象出来用于区别其他类别事物的属性集合,图像特征则是从图像中抽取出来用于区别其他类别图像的属性集合。         从获取方式看:图像特征是通过对图像进行测量或借助算法计算得到的一组表达特性集合的向量。 2 认识         有些特征是视觉直观感受到的自然特征,例如亮度、边缘轮廓、纹理、色彩等。         有些特征需要通

【python计算机视觉编程——7.图像搜索】

python计算机视觉编程——7.图像搜索 7.图像搜索7.1 基于内容的图像检索(CBIR)从文本挖掘中获取灵感——矢量空间模型(BOW表示模型)7.2 视觉单词**思想****特征提取**: 创建词汇7.3 图像索引7.3.1 建立数据库7.3.2 添加图像 7.4 在数据库中搜索图像7.4.1 利用索引获取获选图像7.4.2 用一幅图像进行查询7.4.3 确定对比基准并绘制结果 7.

【python计算机视觉编程——8.图像内容分类】

python计算机视觉编程——8.图像内容分类 8.图像内容分类8.1 K邻近分类法(KNN)8.1.1 一个简单的二维示例8.1.2 用稠密SIFT作为图像特征8.1.3 图像分类:手势识别 8.2贝叶斯分类器用PCA降维 8.3 支持向量机8.3.2 再论手势识别 8.4 光学字符识别8.4.2 选取特征8.4.3 多类支持向量机8.4.4 提取单元格并识别字符8.4.5 图像校正

Python计算机视觉编程 第十章

目录 一、OpenCv基础知识 1.读取和写入图像 2.颜色空间 3.显示图像和结果 二、处理视频 1.输入视频 2.将视频读取到NumPy数组中 三、跟踪 1.光流 2.Lucas-Kanade算法 一、OpenCv基础知识 OpenCV 自带读取、写入图像函数以及矩阵操作和数学库。 1.读取和写入图像 import cv2# 读取图像im = c

React第五章(swc)

swc 什么是swc? SWC 既可用于编译,也可用于打包。对于编译,它使用现代 JavaScript 功能获取 JavaScript / TypeScript 文件并输出所有主流浏览器支持的有效代码。 SWC在单线程上比 Babel 快 20 倍,在四核上快 70 倍。 简单点来说swc实现了和babel一样的功能,但是它比babel快。 FAQ为什么快? 编译型 Rust 是

2025届计算机毕业设计:如何构建Java SpringBoot+Vue个人健康档案管理系统?

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 | SpringBoot/SSM Python实战项目 | Django 微信小程序/安卓实战项目 大数据实战项目 ⚡⚡文末获取源码 文章目录

计算机毕业设计选题推荐-域名管理系统-域名商城-域名竞拍系统-Java/Python项目实战

✨作者主页:IT研究室✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python项目 安卓项目 微信小程序项目 文章目录 一、前言二、开发环境三、系统界面展示四、代码参考五、论文参考六、系统视频结语