计算机组成原理——解决了我的一些困惑

news2024/10/5 19:16:22

这个是复习408时,临时起意,把这些问题记录下来,我现在复习了一半有余,于是把这些发布出来(如果后面有新的,我会在这里面进行更新)

1、代码中的——类型转换(int -> short)

多变少(int -> short)——高位截断——精度丢失(高的)

少变多(short -> int)——高位拓展——开头为1就全补1,为0就全补0

2、换内存条——双通道要2和4才可以

3、买的硬盘容量 & 实际电脑显示容量——不匹配

由于硬盘制造商和计算机系统对容量单位的定义存在差异导致的。

硬盘制造商通常采用十进制计量系统来表示硬盘容量,即1GB等于10亿字节,1TB等于1万亿字节。而计算机系统则采用二进制计量系统,即1GB等于2的30次方(约10亿字节),1TB等于2的40次方(约1万亿字节)。这样一来,同一个硬盘容量在制造商和计算机系统之间的单位换算就会有所不同。

举例说明:

如果购买了一个标称容量为1TB(1万亿字节)的硬盘,在计算机系统中显示的容量大约为931GB左右。这是因为计算机系统将1TB转换为2进制计量系统的容量单位后,得到的数值比制造商标明的容量要小。

此外,硬盘中也会预留一部分空间用于文件系统的管理、坏道修复、性能维护等目的,这也会导致实际可用空间比标称容量更小一些。

因此,在购买硬盘时,可以通过将制造商标称的容量按照计算机系统的计量单位进行转换,以便更好地了解实际可用空间。

可以使用以下公式进行换算:

实际可用空间 = 标称容量 * 制造商容量单位 / 计算机系统容量单位

例如,对于一个标称容量为1TB的硬盘: 实际可用空间 = 1TB * 1000000000 / 1073741824 ≈ 931GB

这样就能更准确地估计实际可用空间与标称容量之间的差异。

请注意,不同品牌和型号的硬盘,其实际空间损失可能会有所差异。

4、固态硬盘 & 机械硬盘 谁更好

固态硬盘的优点:

  1. 速度更快:固态硬盘使用闪存芯片来存储数据,具有较快的读写速度,可以显著提升系统的响应速度和启动时间。
  2. 更高的数据可靠性:固态硬盘没有移动部件,较机械硬盘更耐震动,且不受碎片化影响,数据可靠性更高。
  3. 低功耗和无噪音:固态硬盘不需要马达等机械部件,具有更低的功耗和无噪音运行。

机械硬盘的优点:

  1. 存储容量更大:相对于固态硬盘,机械硬盘可以提供更大的存储容量,适合存储大量的文件和数据。
  2. 价格更经济:机械硬盘的价格相对较低,如果对存储容量要求较高或预算有限,机械硬盘可能是更经济的选择。
  3. 长时间存储:机械硬盘在长期不使用时不会出现数据丢失的问题,适合用于备份和长期存储。

5、流水线 与 集群 (资本家看了都流泪)

  1. 流水线(Assembly Line):流水线是一种生产制造工艺,它将产品的制造过程分为多个工序,并且每个工序都由特定的工人或机器完成。在流水线上,产品在每个工序之间按照固定的顺序传递,每个工序只需完成特定的任务,然后将产品传递给下一个工序。流水线可以提高生产效率、降低成本,并且适用于大规模生产的场景。

  2. 集群(Cluster):集群是指将多台计算机通过网络连接起来,形成一个整体,以共同完成某个任务或提供某种服务。在集群中,各个计算机被称为节点,它们之间可以相互通信和协作。集群可以通过将任务分配给多个节点并行执行来提高计算能力和处理大规模数据的能力。集群广泛应用于大数据处理、高性能计算、服务器集群等领域。

共同点:

  • 提高效率:无论是流水线还是集群,它们都致力于提高工作效率。流水线通过将制造过程细分为多个工序并同时进行,实现了并行和专业化的生产方式,提高了生产效率。集群将多个计算机连接在一起并协同工作,可以同时处理更多的任务,提高了计算能力和效率。
  • 分工协作:流水线和集群都涉及到任务的分工和协作。流水线中,每个工序负责特定的任务,产品在不同的工序之间传递,并最终完成制造。集群中,每个节点负责处理特定的任务或提供特定的服务,彼此之间相互协作共同完成整体任务或服务。
  • 大规模应用:流水线和集群都适用于大规模应用场景。流水线广泛应用于制造业,如汽车制造、电子产品制造等;而集群广泛应用于计算领域,如大数据处理、云计算、超级计算等。

超标量流水线是一种计算机架构设计的技术,用于提高单个处理器的指令执行效率。它利用了指令级并行性,即同时执行多条指令,以加快程序的执行速度。超标量流水线通过将多个阶段的指令流水化处理,并采用多发射等技术,在一个时钟周期内同时执行多条指令,从而提高处理器的吞吐量和效率。 

  • 超标量流水线主要应用于单个处理器内部,通过优化指令执行顺序和并行执行多条指令,提高单个处理器的性能。
  • 集群主要应用于多个计算机的协同工作,通过任务的并行分发和处理,以提供更高的计算能力和服务能力。

5、真值(原码)、补码、移码

(对于符号位相同的数——真值(原码)、补码、移码都是单调增的)

6、0.1和0.3用二进制(浮点数)表示不了

使用32位(单精度)浮点数表示0.1时,其值实际上是0.100000001490116119384765625,而不是精确的0.1。这是由于在二进制中,无法准确表示0.1的精确值,导致了舍入误差。

在计算机中,浮点数的二进制表示是有限的,而十进制小数0.3的二进制表示是无限循环的。具体地说,0.3的二进制表示为0.0100110011001100110011001100110011...,其中数字01不断重复下去。因此,在计算机中用有限的位数来表示0.3时,就会出现精度误差。

7、为什么会有反码、补码、移码?

1.反码(One's Complement):

  • 正数的反码与原码相同。
  • 负数的反码是将其原码按位取反(0变1,1变0)得到的结果。

反码解决的问题:

  • 解决了符号位的表示问题,通过将最高位作为符号位来表示正负数。
  • 但它存在两个表示零的编码(正零和负零),同时也使得加法和减法运算比较复杂。

2补码(Two's Complement):

  • 正数的补码与原码相同。
  • 负数的补码是将其反码末位加1得到的结果。

补码解决的问题:

  • 解决了反码表示下存在两个零的问题,只有一个表示零的编码。
  • 同时,加法和减法运算可以在补码的基础上进行,简化了运算。

3移码(Excess-K Code):

  • 移码是在原码的基础上对于正数直接加上K,负数则是将其反码末位加1再加上K。

移码解决的问题:

  • 主要用于浮点数的表示和运算,其中移码的偏移量K可以用来表示指数的偏移量,方便进行浮点数的比较和计算。 

8、为什么IEEE754的移码偏置值是127,而不是128?

IEEE754设置的是2n-1-1 (普通移码就是:2n-1注意!!!!!!!!!!!!

IEEE 754中,一个单精度浮点数由1位符号位、8位指数位和23位尾数位组成。

看似-1多余,然而,偏移量-1的操作,就可以让浮点数表示的范围,提升了将近1半!!!

9、IEEE754的阶码全0 和 全1的用处

IEEE754的理解归纳_阶码全0,尾数不全为0_caseyzzz的博客-CSDN博客

阶码全0和全1是特殊用处的值:

阶码全0,尾数全0即为0【正负之分看最高符号位】

阶码全0,尾数不全为0,取消隐含1规则,为非规范化数,实际数为0.M * 2^(0-127) = 0.M * 2^-127

阶码全1,尾数全0,代表无穷【正负之分看符号】

阶码全1,尾数不为0,无效数

10、ROM、RAM、DAM、SAM、PROMFlash

1. ROM(只读存储器):

• 嵌入式系统:ROM 用于存储固化的程序和数据,如传统游戏机、电子设备等。

• BIOS(基本输入/输出系统):计算机的 ROM 存储了启动时需要的基本指令集。

• 软件固件:一些设备上的固件是以 ROM 的形式存储的,如路由器、手机等。

2. RAM(随机存取存储器):

• 主存储器:计算机的主要内存用于暂时存储运行中的程序和数据。(一般是ROM+RAM)

• 缓存:CPU 缓存是用于加快数据访问速度的高速 RAM。

• 图形处理器(GPU)内存:用于高性能图形计算、游戏和视频处理等。

3. SAM(顺序访问存储器):

• 磁带存储:SAM 是一种顺序读写的存储介质,广泛用于数据备份、长期存档和归档等。

• 音频/视频录音:某些音频或视频设备使用 SAM 存储格式进行录制和存储。

DAM——直接存取存储器——用于磁盘

  1. PROM(可编程只读存储器):与 ROM 类似,但可以通过特定的编程过程进行一次性的写入操作。
  2. EPROM(可擦除可编程只读存储器):类似于 PROM,但可以通过特定的紫外线擦除操作重复写入。
  3. EEPROM(电子可擦除可编程只读存储器):类似于 EPROM,但可以通过电子方式擦除和重写。
  4. Flash 存储器:一种非易失性存储器,用于储存数据和程序代码。常见于 USB 驱动器、SSD(固态硬盘)、移动设备等。
  5. Cache 存储器:作为高速缓存的一部分,用于临时存储最常访问的数据,以提高计算机的性能。
  6. VRAM(显存):用于存储图形和视频数据,供显卡使用。
  7. Register(寄存器):位于 CPU 内部的高速存储器,用于存储指令、地址和数据,用于执行计算任务。

11、计算机中的单位(B、KB、MB、GB、TB)

计算机存储单位一般用B,KB,MB,GB,TB,PB,EB,ZB,YB,BB

1B (byte 字节);1B(byte)= 8bit

1KB(Kilobyte 千字节) = 2^10 B = 1024 B;

1MB(Megabyte 兆字节) = 2^10 KB = 1024 KB = 2^20 B;

1GB(Gigabyte 吉字节) = 2^10 MB = 1024 MB = 2^30 B;

1TB(Trillionbyte 太字节) = 2^10 GB = 1024 GB = 2^40 B;

1PB(Petabyte 拍字节) = 2^10 TB = 1024 TB = 2^50 B;

1EB(Exabyte 艾字节) = 2^10 PB = 1024 PB = 2^60 B;

1ZB(Zettabyte 泽字节) = 2^10 EB = 1024 EB = 2^70 B;

1YB(YottaByte 尧字节) = 2^10 ZB = 1024 ZB = 2^80 B;

1BB(Brontobyte ) = 2^10 YB = 1024 YB = 2^90 B

1NB(NonaByte ) = 2^10 BB = 1024 BB = 2^100 B

1DB(DoggaByte) = 2^10 NB = 1024 NB = 2^110 B

12、计算机中CPU的位数、32位、64位是什么?

安装软件时,软件后面都跟个(x32) 或者(x64)什么意思?

翻译:你的电脑CPU可以一次性处理的数据是多少位!

如果是x32,则是32位的

如果是x64,则是64位的(意味着你的CPU可以一次性处理64位)

CPU的一次性处理的位数 = 数据总线的位数

13、异常和中断(区别)

异常是在程序执行过程中出现的非预期事件,例如除零错误、访问无效内存、非法指令等。当出现异常时,处理器会中断当前的正常程序流程,并跳转到异常处理程序进行异常处理。异常通常由指令或者数据错误引起,是程序错误或者系统错误的结果。

中断是外部设备或者其他硬件信号请求处理器停止当前执行的指令,转而处理特定的任务。中断可以是来自外部设备的输入/输出请求、定时器触发、硬件错误等。当中断发生时,处理器会保存当前上下文,暂停当前执行的程序,并跳转到中断处理程序进行相应的处理。中断通常由硬件触发,用于处理外部事件或者设备的交互。

异常——在任何时间都可能发生

中断——在一条指令执行完后,才会发现(毕竟要保障指令的原子性)

异常——不可控(0容忍!)有了那么就必须处理(毕竟是出现了错误

中断——可以等待的那种!!!(这个是设置的一个操作而已!)

14、从高级语言到机器语言的转换(翻译程序-编译-解释-汇编)

1.编译执行

编译方式是将整个高级语言编写的源程序先翻译成机器语言程序,然后再生成可在操作系统下直接运行的执行程序,通常会产生目标程序。

2.解释执行

解释方式是将源程序逐句解释执行,即解释一句执行一句,因此在解释方式中不产生目标文件。

特点

编译

解释

翻译过程

源程序整体翻译成目标代码,分阶段翻译和执行

逐行解释执行源程序,一次性完成翻译和执行

目标代码

生成可执行的目标代码文件

不生成可存储的目标代码

控制权

运行时控制权在用户程序

运行时控制权在解释器

动态特性

缺乏动态特性,执行前已确定的静态结构

具有动态特性,可以动态改变类型、修改程序等

可移植性

依赖于目标平台,不同平台需要重新编译

解释器移植到不同系统上,程序无需修改即可运行

运行速度

生成的目标代码直接执行,运行速度较快

逐行解释执行,运行速度相对较慢

调试性

需要通过调试工具进行调试

可以插入调试诊断信息,方便调试

示例语言

CC++Java

PythonJavaScript

翻译程序是一种系统程序,它将计算机编程语言编写的程序翻译成另外一种计算机语言的一般来说等价的程序,主要包括编译程序和解释程序汇编程序也被认为是翻译程序

1、汇编程序是指把【汇编语言书写的程序】翻译【机器语言程序】的翻译程序。

2编译程序是将【整个高级语言编写的源程序】先翻译成【机器语言程序】,然后再生成可在操作系统下直接运行的执行程序,通常会产生目标程序。

3、解释程序是将【源程序逐句解释执行】,即解释一句执行一句,因此在解释方式中不产生目标文件。

链接程序将汇编程序处理过的目标程序链续可执行程序

它将一组目标模块及所需的库函数链接在一起。不属于翻译程序。

(编译器和汇编程序都经常依赖于连接程序

15、进制(个十百千万亿)

10的0次方——个

10的1次方——十

10的2次方——百

10的3次方——千

10的4次方——万

10的5次方——十万

10的6次方——百万

10的7次方——千万

10的8次方——亿

10的16次方——亿亿

5亿亿——5*10^16

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1127280.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

客户保留是什么意思?

任何一家企业,都需要去思考在销售过程中有多少客户是有效的?又有多少客户是可以保留的?初具规模的企业通过CRM客户管理系统只一味的开发新客户,而忽略客户保留,反而会造成资源的浪费。那么我们常说的客户保留是什么意思…

18 - 如何设置线程池大小?

还记得在 16 讲中说过“线程池的线程数量设置过多会导致线程竞争激烈”吗? 今天再补一句,如果线程数量设置过少的话,还会导致系统无法充分利用计算机资源。那么如何设置才不会影响系统性能呢? 其实线程池的设置是有方法的&#…

出差学小白知识No5:|Ubuntu上关联GitLab账号并下载项目(ssh key配置)

1 注冊自己的gitlab账户 有手就行 2 ubuntu安装git ,并查看版本 sudo apt-get install git git --version 3 vim ~/.ssh/config Host gitlab.example.com User your_username Port 22 IdentityFile ~/.ssh/id_rsa PreferredAuthentications publickey 替换gitl…

python实现批量pdf转txt和word

文章目录 背景需求环境安装完整代码效果 背景需求 已经获取到了大量的pdf在download文件夹中,但是我需要的是txt文件和word文件~ 环境安装 pip install pdf2docx pdfminer.six完整代码 # pip install pdf2docx pdfminer.siximport os from pdf2docx …

【LeetCode刷题-数组】--27.移除元素

27.移除元素 class Solution {public int removeElement(int[] nums, int val) {int slow 0,fast 0,n nums.length;while(fast < n){if(nums[fast] ! val){nums[slow] nums[fast];slow;}fast;}return slow;} }

Real3D FlipBook jQuery Plugin 3.41 Crack

Real3D FlipBook 和 PDF 查看器 jQuery 插件 - CodeCanyon 待售物品 实时预览 截图 视频预览 Real3D Flipbook jQuery 插件 - 1 Real3D Flipbook jQuery 插件 - 2 Real3D Flipbook jQuery 插件 - 3 新功能 – REAL3D FLIPBOOK JQUERY 插件的 PDF 到图像转换器 一款用于将…

在亚马逊购买产品时怎么选择自动收货方式

在亚马逊购买产品时&#xff0c;通常可以在下单时选择不同的收货方式&#xff0c;包括自动收货方式。以下是一般的购买流程&#xff1a; 登录亚马逊账号&#xff1a;打开网站&#xff0c;登录账号&#xff0c;如果没有账号&#xff0c;可以先创建一个。 浏览和添加商品&#…

Java JSON字符串转换成JSONArray对象,遍历JSONArray

JSON字符串转换成JSONArray对象&#xff0c;遍历JSONArray&#xff1a; // 一个未转化的字符串 String str "[{name:a,value:aa},{name:b,value:bb},{name:c,value:cc},{name:d,value:dd}]" ;// 首先把字符串转成 JSONArray 对象 JSONArray jsonArray JSONArray.p…

初探亚马逊 AI 编程助手 CodeWhisperer

前言 4月18日&#xff0c;亚马逊云科技宣布&#xff0c;实时 AI 编程助手 Amazon CodeWhisperer 正式可用,同时推出的还有供所有开发人员免费使用的个人版&#xff08;CodeWhisperer Individual&#xff09;。Amazon CodeWhisperer 是一个通用的、由机器学习驱动的代码生成器&…

Windows下 MySql 5.7授权远程登陆

1.用管理员身份打开mysql Client 2.输入密码登录 3.使用mysql数据库&#xff0c;输入“use mysql” 4.查看当前服务中使用的用户 select host,user form user; 5.授权 grant all privileges on *.* to 用户名% identified by 密码 with grant option; 6.成功后&#xff0c;刷…

众和策略:612家公司三季报折射经济复苏力度

超七成前三季度效果同比添加 近三成第三季度效果环比添加 Choice数据闪现&#xff0c;到10月23日&#xff0c;已有612家A股公司宣告前三季度效果或效果预告&#xff0c;其间跨越七成公司结束同比添加&#xff0c;近三成公司第三季度结束了效果环比添加&#xff0c;充分彰显出中…

音视频(一)之使用FFMpeg工具推流并搭建流媒体服务器Nginx + RTMP

协议介绍 RTMP协议 全称&#xff1a;Real Time Messaging Protocol&#xff0c;实时消息传送协议介绍&#xff1a;是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议协议&#xff1a;长连接TCP原理&#xff1a;每个时刻的数据收到后立刻转发延…

GB28181学习(十一)——控制(PTZ、镜头、光圈等控制)

要求 源设备向目标设备发送控制命令&#xff0c;控制命令类型包括&#xff1a; 摄像机云台控制远程启动录像控制报警布防/撤防报警复位强制关键帧拉框放大/缩小看守位控制PTZ精准控制存储卡格式化目标跟踪软件升级设备配置 设备配置的内容包括&#xff1a; 基本参数视频参数范…

ASO优化之什么是长尾关键词

通常长尾关键词的竞争通常较小&#xff0c;我们可以通过优化长尾关键词&#xff0c;来更轻松地在搜索结果中获得高排名。那么我们需要找到哪些应该优化的关键词以及如何优化。 1、长尾关键词的好处。 长尾关键字中添加的详细信息可以帮助缩小受众群体的范围&#xff0c;使得长…

python爬虫入门(四)爬取猫眼电影排行(使用requests库和正则表达式)

本例中&#xff0c;利用 requests 库和正则表达式来抓取猫眼电影 TOP100 的相关内容。 1.目标 提取出猫眼电影 TOP100 的电影名称、时间、评分、图片等信息&#xff0c;提取的站点 URL 为 http://maoyan.com/board/4&#xff0c;提取的结果会以文件形式保存下来。 2.抓取分析…

迅为龙芯2K1000开发板加载PMON镜像

注意&#xff1a;这里不建议大家在没有 Ejtag 的情况下对 PMON 进行操作&#xff0c;以免开发板变砖。 设置完网络后&#xff0c;我们输入命令 load -f 0xbfc00000 -r tftp://192.168.1.38/gzrom-dtb.bin&#xff0c;其中 192.168.1.38 为虚拟机 Ubuntu 的 IP 地址&#xff0…

数字孪生 Digital Twin 标准体系

1.什么是数字孪生&#xff1f; 数字孪生&#xff08;Digital T w in &#xff09;作为一种在信息世界刻画物理世界 、仿真物理世界 、优化物理世界 、可视化物理世界的重要技术 &#xff0c;为实现数字化转型 、智能化&#xff08;如智慧城市 、智能制造&#xff09; 、服务化 …

工业RFID系统识别原理

RFID技术是一种无线通信技术&#xff0c;可以实现非接触式的标签信息识别和读取&#xff0c;常常也被应用在工业生产、物流仓储等领域。工业RFID系统可以通过无线电信号识别和跟踪工业生产和管理领域中的物体&#xff0c;以下是工业RFID系统组成及相关应用介绍。 工业RFID系统组…

雅可比矩阵和雅可比坐标

雅可比行列式的简要介绍 一、说明 在本教程中&#xff0c;您将回顾一下雅可比行列式的简单介绍。完成本教程后&#xff0c;您将了解&#xff1a; 雅可比矩阵收集了可用于反向传播的多元函数的所有一阶偏导数。雅可比行列式在变量之间变化时非常有用&#xff0c;它充当一个坐标空…

阶段性学习小记

大家好&#xff0c;今天我们来详细的总结一下最近这段时间的习题。 习题一 #include<stdio.h> int main() {char arr[13] { 0 };int N 0;scanf("%d", &N);int k 0;int i 0;while (N){if (k ! 0 && k % 3 0)arr[i] ,;arr[i] N % 10 0;N / 1…