第1章 基础知识

第1章 基础知识

1.1 机器语言

机器语言就是机器指令的集合,机器指令展开来讲就是一台机器可以正确执行的命令

1.2 汇编语言的产生

  • 汇编语言的主题是汇编指令。
  • 汇编指令和机器指令的差别在于指令的表示方法上,汇编指令是机器指令便于记忆的书写格式。
  • 寄存器:简单来说就是 CPU 中可以存储数据的器件,一个 CPU 可有多个寄存器。AX 是其中一个寄存器的代号,BX 是另一个寄存器的代号。

操作 :寄存器 BX 内容送到 AX 中

机器指令:1000100111011000

汇编指令:mov ax,bx

因为计算机只能读懂机器指令,需要使用编译器将汇编指令编译成机器指令。

image

1.3 汇编语言的组成

三类指令组成:

  1. 汇编指令:机器码的助记符,有对应的机器码。
  2. 伪指令:没有对应的机器码,由编译器执行,计算机并不执行。
  3. 其他符号:如 +、-、*、/ 等,由编译器识别,没有对应的机器码。

汇编语言的核心是汇编指令,它决定了汇编语言的特性。

1.4 存储器

  • 就是我们平常所说的内存.
  • 磁盘不同于内存,磁盘上的数据或程序如果不读到内存中,就无法被 CPU 使用。

1.5 存储单元

  • 存储器会被划分若干个存储单元,每个存储单元从0开始顺序编号,例如一个存储器有128个存储单元,编号从0~127。
  • 计算机最小信息单位是 bit (比特),也就是一个二进制位;
  • 8个 bit 组成一个 Byte,也就是通常讲的一个字节。即8个二进制位;
  • 一个存储器有128个存储单元,它可以存储128个 Byte。

还可用以下单位来计量容量(以下用 B 来代表 Byte):

  • 1KB = 1024 B
  • 1MB = 1024 KB
  • 1GB = 1024 MB
  • 1TB = 1024 GB

1.6 CPU 对存储器的读写

CPU 要进行数据的读写,必须和外部器件(芯片)进行下面3类信息的交互:

  1. 存储单元的地址(地址信息)
  2. 器件的选择,读或写的命令(控制信息)
  3. 读或写的数据(数据信息)

通过地址总线,数据总线,控制总线对存储芯片中的数据进行读写。

1.7 地址总线

CPU 是通过地址总线来指定存储单元的,所以地址总线能传输多少不同的信息,CPU 就可以对多少个存储单元进行寻址。

假设:一个 CPU 有10根地址总线,如何看寻址情况

一根导线稳定状态有两种,高电平或低电平,即1或0;10根导线则可以传输10位二进制数据,所以最小为0,最大为1023。

1.8 数据总线

数据总线的宽度决定了 CPU 和外界的数据传送速度。8根数据总线一次可传1个字节(8位二进制)数据。16跟数据总线一次可传2个字节数据。

1.9 控制总线

CPU 通过控制总线实现对外部器件的控制。有多少根控制总线,就意味着 CPU 提供了对外部器件的多少种控制。所以,控制总线的宽度决定了 CPU 对外部器件的控制能力。

1.10 主板

每一台 PC 中,都有一个主板,通过地址总线,数据总线,控制总线将核心器件和主要器件进行相连

1.11 接口卡

计算机系统中,所有可用程序控制其工作的设备,必须受到 CPU 控制,CPU 对外部设备都不能直接控制,比如显示器,音响,打印机等,直接控制这些设备进行工作的是 插在扩展插槽上的接口卡,扩展插槽通过总线和 CPU 相连,接口卡也通过总线和 CPU 进行相连。CPU 通过总线向接口卡发送命令,接口卡根据 CPU 的命令控制外设进行工作

1.12 各类存储器芯片

一个 PC 中装有多个存储器芯片,从读写属性中分为

  • RAM(随机存储器):必须带电存储,关机后存储的内容丢失
    • 第一种:存放 CPU 和绝大部分程序和数据,主随机存储器一般由两个位置上的 RAM 组成,装在主板上的 RAM 和装在扩展槽上的 RAM;
    • 第二种:接口卡上的 RAM,某些接口需要对大批量数据,数据数据进行暂时存储,在其上安装 RAM,最典型的就是显卡上的 RAM,称之为 显存 ,将要写入的内容写入显存中,显示卡随时将显存的数据在显示器上输出。
  • ROM(只读存储器):只能读取,不能写入,关机之后内容不丢失
    • 装有 BIOS(Basic Input/Output System,基本输入/输出系统)的 ROM,BIOS 是主板和各类接口卡(如显卡,网卡等)厂商提供的软件系统,可以通过它利用该硬件设备进行最基本的输入和输出。例如:主板的 ROM 中存储的主板的 BIOS(系统BIOS),显卡上存储着显卡的 BIOS,网卡上安装网卡的 BIOS。

image

1.13 内存地址空间

上述的那些存储器,在物理上是独立的器件,但是一些两点比较相同

  • 都和 CPU 总线进行相连
  • CPU 对它进行读写时候都是通过控制线发出内存读写命令

image

在上图中,所有的物理存储器被看作一个有若干个存储单元组成的 逻辑存储器,每个物理存储器在这个逻辑存储器中占有一个地址段,即一段地址空间,CPU 在这段地址空间读写数据,实际上就是在相对应的物理存储器上读写数据。

1.14 总结

总结:

  1. 汇编指令是机器指令的助记符,同机器指令一一对应
  2. 每一种 CPU 都有自己的汇编指令集
  3. CPU 可以直接使用的信息在存储器中存放
  4. 在存储器中指令和数据没有任何区别,都是二进制信息
  5. 存储单元从零开始顺序编号
  6. 一个存储单元可以存储8个bit,即8位二进制数
  7. 1Byte = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 类比:2^10 1KB 2^20 1MB 2^30 1GB
  8. 每一个 CPU 芯片都有许多管脚,这些管脚和总线进行相连,也可以说,这些管脚引出总线。CPU 引出3种总线的宽度标志这个 CPU 的不同方面的性能:
  9. 地址总线宽度决定了 CPU 的寻址能力
  10. 数据总线的宽度决定了 CPU 和其它器件进行数据传送时的一次数据传送量
  11. 控制总线宽度决定了 CPU 对系统中器件的控制能力
  12. 内存地址空间:使用汇编语言编程时候,必须从 CPU 的角度考虑问题,对 CPU 来说,系统中的所有存储器中的存储单元都处于一个统一的逻辑存储器中,它的容量受 CPU 的寻址能力限制,这个逻辑 CPU 就是我们所说的内存地址空间

习题:

(1)1个 CPU 的寻址能力为 8KB,那么它的地址总线的宽度为 13 位。

答:8KB = 8*1024 Byte = 23 ✖ 210 = 213 Byte 所以13位。

(2)1KB 的存储器有 1024 个存储单元,存储单元的编号从 01023

答:一个存储字长为 8bit,1KB = 1024 Byte = 1024 * 8 bit 有1024 存储单元。

(3)1KB 的存储器可以存储 8192(213) 个bit, 1024 个 Byte。

答:1KB = 1024 Byte = 1024 * 8 bit 。

(4)1GB 是 1073741824 (230 个 Byte、1MB 是 1048576(2^20) 个 Byte、1KB 是 **1024(210)**个 Byte。

(5)8080、8088、80296、80386的地址总线宽度分别为16根、20根、24根、32根,则它们的寻址能力分别为: 64 (KB)、 1 (MB)、 16 (MB)、 4 (GB)。

答:16根:216 = 210 * 26 。210 是 1024 就是 1KB。然后乘 26 = 64 就是 64 KB,后面依此类推。

(6)8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根。则它们一次可以传送的数据为:

1 (B)、 1 (B)、 2 (B)、 2 (B)、 4 (B)。

答:8根就是 8bit = 1B ,后面依此类推。

(7)从内存中读取 1024 字节的数据,8086 至少要读 512 次,80386 至少要读 256 次。

答:8086 数据总线宽度为16 1024 * 8 /16 = 512 80386 数据总线宽度为32 1024 * 8 /32 = 256 后面依此类推。

(7)从内存中读取 1024 字节的数据,8086 至少要读 512 次,80386 至少要读 256 次。

答:8086 数据总线宽度为16 1024 * 8 /16 = 512 80386 数据总线宽度为32 1024 * 8 /32 = 256

(8)在存储器中,数据和程序以 二进制 形式存放。

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

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

相关文章

扫盲之webSocket

介绍 webSocket 是一种协议,设计用于在客户端和服务器之间提供低延迟、全双工、和长期运行的连接。 全双工:通信的两个参与方可以同时发送和接收数据,不需要等待对方的响应或传输完成 websocket就是为了解决实时通信的问题 建立webSocke…

老年生活照护实训室:让养老护理变得更简单

在人口老龄化日益严重的今天,养老问题成为了社会关注的焦点。如何让老年人过上幸福、安康的晚年生活,成为了摆在我们面前的一道难题。老年生活照护实训室的应运而生,为养老服务行业提供了一个学习、交流和实践的平台,让养老护理变…

测试用例设计方法-流程分析法

一、引言 在软件开发过程中,测试是确保软件质量的关键环节之一。而测试用例设计作为测试过程中的重要组成部分,其质量和完备性直接影响到测试效果和软件的最终交付质量。 测试用例设计的目标是通过设计一组有效的测试用例来检查软件系统的各种功能和行为…

送物机器人电子方案定制

这是一款集娱乐、教育和互动于一身的高科技产品。 一、它的主要功能包括: 1. 智能对话:机器人可以进行简单的对话,回答用户的问题,提供有趣的互动体验。 2. 前进、后退、左转、右转、滑行:机器人可以通过遥控器或AP…

基于MATLAB仿真设计无线充电系统

通过学习无线充电相关课程知识,通过课程设计无线充电系统,将所学习的WPT,DC-DC,APFC进行整合得到整个无线充电系统,通过进行仿真研究其系统特性,完成我们预期系统功能和指标。 以功率器件为基本元件&#x…

Redis 7.x 系列【7】数据类型之列表(List)

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 常用命令2.1 RPUSH2.2 LPUSH2.3 LRANGE2.4 LINDEX2.6 LREM2.7 LLEN2.8 LPOP…

【例子】webpack 开发一个可以加载 markdown 文件的加载器 loader 案例

Loader 作为 Webpack 的核心机制,内部的工作原理却非常简单。接下来我们一起来开发一个自己的 Loader,通过这个开发过程再来深入了解 Loader 的工作原理。 这里我的需求是开发一个可以加载 markdown 文件的加载器,以便可以在代码中直接导入 m…

软考系统架构师系统工程与信息系统基础考点

软考系统架构师系统工程与信息系统基础考点 系统工程 定义:一种组织管理技术,一种现代的科学决策方法 目的:以最好的方式实现系统 目标:整体最优 意义:利用计算机为工具,对系统的结构、元素、信息和反馈…

网络流-EK算法(保姆级教学)

本文引用董晓算法的部分图片。 一些不能带入纸质资料的竞赛,网络流纳入考纲。 因为需要默写,想来也不会考默写dinic这种算法难倒大家,只需要快速敲对EK算法就行了。 EK算法能在O(n*m^2)的复杂度内解决最大流问题,其中最大流就是…

wpf 附加属性 RegisterAttached 内容属性

// // 摘要: // 选中时展示的元素 public static readonly DependencyProperty CheckedElementProperty DependencyProperty.RegisterAttached("CheckedElement", typeof(object), typeof(StatusSwitchElement), new PropertyMetadata((object)null…

java加载文件初始化数据

对于一些数据量不大的配置类数据,放到数据库中占用数据库资源,可以放到代码中维护。比如 (1)字段少业务单一:做成枚举; (2)字段多业务复杂:则可以放到文件中维护&#…

【Linux小命令】一文讲清ldd命令及使用场景

一文讲清ldd命令及使用场景 前言下面进入正题:ldd命令 前言 博主今天ubuntu编译go项目出来的一个可执行文件,放centos运行发现居然依赖于XXlib库。然后我一下就想到两个系统库版本不一致,重编。换系统,导项目,配环境……

从新手到高手:彻底掌握MySQL表死锁

欢迎来到我的博客,代码的世界里,每一行都是一个故事 🎏:你只管努力,剩下的交给时间 🏠 :小破站 从新手到高手:彻底掌握MySQL表死锁 前言什么是死锁mysql死锁的原因1. 互斥资源的竞争…

备份操作系统

在VMware中备份方式:快照和克隆 1.快照:短期备份,频繁备份 快照:又称还原点,就是保存在拍照时,系统状态。在后期的时候可以恢复 2.克隆:长期备份 克隆:就是复制的意思&#xff0…

maven仓库的作用以及安装 , DEA配置本地Maven

ay12-maven 主要内容 Maven的作用Maven仓库的作用Maven的坐标概念Maven的安装IDEA配置本地Maven 一、maven概述 1.1、项目开发中的问题 1、我的项目依赖一些jar包,我把他们放在哪里?直接拷贝到项目的lib文件夹中?如果我开发的第二个项目还是需要上面…

网管工作实践_02_IP/MAC地址管理工具

1、ipconfig命令格式及参数 ipconfig是内置于Windows的TCP/IP应用程序,用于显示本地计算机网络适配器的MAC地址和IP地址等配置信息,这些信息一般用来榆验手动配置的TCP/IP设置是否正确。当在网络中使用 DHCP服务时,IPConfig可以检测计算机中分…

006 动态数组(lua)

文章目录 初步准备实际应用 在Lua中,没有类的概念,因为它是基于原型的语言。不过,我们可以使用表(table)来模拟类和对象 Lua中的数组索引是从1开始的,而不是从0开始, Lua的表是动态大小的&#…

DigitalOcean 推出 Opensearch 托管服务,易用且强大的日志洞察与分析工具

DigitalOcean 宣布推出 DigitalOcean 的 Opensearch托管服务,这是一款专为深入的日志分析、简化故障排查和优化应用性能而设计的全面的解决方案。 简单介绍一下 Opensearch 这里先给不了解 Opensearch 的用户简单介绍一下。OpenSearch 是从 Elasticsearch 的一个相…

提升网络速度的几种有效方法

在数字化时代,网络速度对于我们的日常生活和工作至关重要。无论是观看高清视频、在线游戏,还是进行视频会议,快速稳定的网络连接都是不可或缺的。如果你发现自己当前的网络速度不尽如人意,那么不妨尝试以下几种方法来提升它。 升…

6.26.8 基于多视角深度卷积神经网络的高分辨率乳腺癌筛查

1. 介绍 1.1 乳腺癌筛查 开发了一种新的DCN,它能够处理乳房x线摄影筛查的多个视图,并利用大分辨率图像而不缩小。将这种DCN称为多视图深度卷积网络(MV-DCN)。网络学习预测放射科医生的评估,将传入的样本分类为BI-RADS 0(“不完整”)&#xf…