修炼汇编语言第二章:内存地址空间(概述)

news/2024/4/26 10:44:31/文章来源:https://blog.csdn.net/m0_72018048/article/details/130359591

目录

前言

一、主板和接口卡

二、存储器各类芯片

三:内存地址空间

总结


前言

什么是内存地址空间呢?如果地址线为10,那么可以寻址1024个地址空间,这1024个地址空间就构成这个CPU的内存地址空间,下面本文将会介绍两部分基础知识,主板和接口卡。


一、主板和接口卡

每一台PC机上都有主板,主板上都有核心器件和一些主要器件,这些器件通过总线相连,这些器件有CPU,存储器,外围芯片组,扩展插槽等,扩展插槽一般有RAM内存条和各类接口卡。而CPU不能直接控制外部设备例如显示器,音响,打印机等,这些都需要接口卡直接控制,而接口卡直接与CPU相连,CPU可以直接控制接口卡,从而实现对外部设备的间接控制。

二、存储器各类芯片

从读写上来看,存储器分为两类:

  • 随机存储器(RAM)
  • 只读存储器(ROM)

而这些存储器从功能上和连接上又可以分为以下几类

  • 随机存储器
  • 装有BIOS的ROM
  • 接口卡上的RAM(最典型的显卡上的RAM,被称为显存)

下图展示了PC系统中各类存储器的逻辑链接情况‘

三:内存地址空间

上述存储器,在物理上都是独立的器件,但是在以下两点相同:

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

也就是说,在CPU操控他们的时候,把他们都当成内存,把他们总的看作一个由若干个存储单元构成的逻辑存储器,这个逻辑存储器就是我们所说的内存地址空间

此时各种储存器可以假象为一个逻辑存储器,每个物理存储器在逻辑存储器中占有一个地址段,即一段地址空间。CPU在这段地址空间中读写数据,实际上就是在对应物理存储器中读写数据 

假设:

  • 地址0-7FFFH的32KB空间为主RAM的地址空间
  • 地址8000H-9FFFH的8KB空间为显存地址空间
  • 地址A000H-FFFFH的24KB空间为各个ROM的地址空间

当此时

CPU向内存地址为1000H的内存单元中写入数据,这个数据就被写入主RAM,

CPU向内存地址为8000H的内存单元中写入数据,这个数据就被写入显存

.......

内存地址空间的大小受CPU地址总线宽度限制,8086CPU的地址总线宽度为20,可以传输2^20个不同的地址信息,既可以定位2^20个内存单元,则8086PC的内存地址空间大小为1MB。同理,80386CPU的地址总线宽度为32,内存地址最大空间为4GB

当我们对计算机硬件进行系统编程的时候,必须知道这个系统中的内存地址空间分配情况。因为我们在读写数据的时候,必须知道单元的地址,以确保在对应的存储器中进行。

不同的计算机系统对于系统内存分配情况是不同的,下图是8086PC对内存地址空间分配的基本情况


 

总结

最终的运行程序为CPU,我们用汇编语言的时候,必须要从CPU角度思考问题,对CPU来讲,系统中所有存储器的存储单元都处于一个统一的逻辑的存储器中,他的容量收到CPU的寻址能力的限制,这个逻辑存储器就是我们所说的内存地址空间

而对于初学者,这个概念不免有些抽象,后续乐言讲更新一些实践,来增强大家的感性认识

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

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

相关文章

Python如何连接Mysql及基本操作

1.什么要做python连接mysql,一般是解决什么问题的 做自动化测试时候,注册了一个新用户,产生了多余的数据,下次同一个账号就无法注册了,这种情况怎么办呢?自动化测试都有数据准备和数据清理的操作&#xff…

代码在洛谷上跑得慢怎么办?

前言 你有没有试过以下几种情况: 代码在别的OJ上能过,在洛谷上就T了你的代码和同学的几乎相同,但他的AC了,你的却TLE了 遇到这些情况,你可能要花上一个多小时才能解决,甚至难以解决,将问题一…

C. Magic Ship(二分 + 前缀和)

Problem - C - Codeforces 你是一艘船的船长。最初你站在一个点(x1,y1)上(很明显,海上的所有位置都可以用笛卡尔平面描述),你想要前往一个点(x2,y2)。 你知道天气预报——长度为n的字符串s,仅由…

对于程序员来说,搜索有多重要?

2023年4月24日,周一晚上。 今天我用Bing(必应)很快就搜索到了我需要的关于MFC的某个内容, 而我在百度和CSDN搜了好几天都没搜到, 当然,我认为这不仅仅是搜索引擎的问题,也可能是我搜索时输入…

SqlServer2022安装与配置_并用Navicat连接SqlServer---sqlserver工作笔记0001

首先去下载 SQL Server 下载 | Microsoft https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 首先去下载安装包,这里我们下最新的 下载这个免费版的 可以看到下面有个全功能免费版本下载他 然后点击安装 下载以后安装 选择自定义 然后安装

改善内部客户服务的 3 个技巧

在当今世界,许多公司都专注于改善客户关系管理,公司管理层面临的挑战是他们不仅拥有外部客户,员工也是有痛点和需求的内部客户。正如糟糕的客户服务会导致客户流失一样,糟糕的内部客户服务会增加员工流动率。在当今瞬息万变的就业…

SpringBoot 使用 Sa-Token 完成权限认证

一、设计思路 所谓权限认证,核心逻辑就是判断一个账号是否拥有指定权限: 有,就让你通过。没有?那么禁止访问! 深入到底层数据中,就是每个账号都会拥有一个权限码集合,框架来校验这个集合中是…

2023年五月份图形化一级打卡试题

活动时间 从2023年5月1日至5月21日,每天一道编程题。 本次打卡的规则如下: 小朋友每天利用10~15分钟做一道编程题,遇到问题就来群内讨论,我来给大家答疑。 小朋友做完题目后,截图到朋友圈打卡并把打卡的截图发到活动群…

基于GEE平台的植被覆盖度(FVC)像元二分法计算

一、植被覆盖度计算方法 植被覆盖度FVC(Fractional Vegetation Cover)定义为单位面积内绿色植被冠层垂直投影面积所占比例。FVC是衡量地表植被状况的重要指标之一,也是区域生态系统环境变化的重要指示,对水文、生态、区域变化等都…

JUC概述

1. JUC是什么? 在 Java 5.0 提供了 java.util.concurrent(简称JUC)包,在此包中增加了在并发编程中很常用的工具类。此包包括了几个小的、已标准化的可扩展框架,并提供一些功能实用的类,没有这些类,一些功能会很难实现或…

【Daily Share】没有域名怎么破?手把手教你如何通过hosts配置域名(假域名)

目录 ❌前言📄hosts文件🦉DNS解析步骤👌配置伪域名第一步 修改本机hosts配置第二步 配置服务器nginx 🔃流程图 ❌前言 ip记不住??? 域名不想买??? 每次当我…

操作指南|如何创建x-chain DAO

DAO是一个去中心化组织,大体与任何其他组织一样,但它是由智能合约中编码的规则所管理,并使DApps等能够完全去中心化且自主运行。 📄 查看MoonbeamDocs 这与通常的分步教程不同,该推文旨在分享关于运行去中心化自治组…

【剑指offer】(2)

系列文章目录 剑指offer系列是一本非常著名的面试题目集,旨在帮助求职者提升编程能力和应对面试的能力。 文章目录 系列文章目录[TOC](文章目录) 前言一、 用两个栈实现队列🔥 思路🌈代码 二、青蛙跳台阶问题🔥 思路&#x1f308…

ArcGIS Pro、Python、USLE、INVEST模型等多技术融合的生态系统服务构建生态安全格局

第一章、生态安全评价理论及方法介绍 一、生态安全评价简介 ​ 二、生态服务能力简介 ​ 三、生态安全格局构建研究方法简介 ​ 第二章、平台基础一、ArcGIS Pro介绍1. ArcGIS Pro简介2. ArcGIS Pro基础3. ArcGIS Pro数据编辑4. ArcGIS Pro空间分析5. 模型构建器6. ArcGIS Pro…

论文综述——DORE: Document Ordered Relation Extraction based on Generative Framework

DORE: Document Ordered Relation Extraction based on Generative Framework 文章的主要目标是对文档级的关系抽取。以往的研究主要是基于分类的研究,生成式关系抽取研究较少而且性能不佳。 文档级相比于句子级的关系抽取存在序列长度过长,以及实体定位…

Python base64模块加密解密

一、为何使用base64加密解密 为了安全机制的系统,在用户登录的时候,会采用一系列措施保护用户信息,防止程序被攻击,比如:将用户输入的密码加密处理,在控制台看请求接口看到的密码是加密过的密码&#xff0c…

EventBus源码解析

文章目录 前言一、EventBus使用二、EventBus事件流程分析1.注册订阅者2.发布事件Event3.接收事件Event4.取消注册订阅者 三、发送粘性事件问答EventBus 以及它的优点EventBus原理 EventBus中设计模式为什么要使用 EventBus 来替代广播呢?说下 5 种线程模式的区别Eve…

node(express框架)连接mysql 基础篇

文章目录 电脑安装mysql配置mysql连接mysql 创建表 创建node文件启动node node 连接数据库连接数据库 电脑安装mysql 由于我的是mac 我就安装mac版本的 mysql 如已安装跳过此步骤 mysql官网选择版本安装配置 这里注意选择下面的 next输入mysql密码 点击finish 配置mysql 打…

【EasyPoi实战系列】Spring Boot使用EasyPoi的注解让表格更漂亮以及图片的导出 - 第468篇

历史文章(文章累计460) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 【…

行业分析| 视频监控——AI自动巡检

随着视频监控的普及,现在很多社区、工地、车间、厂区、超市、商铺、酒店、餐馆等场所都安装了视频监控系统。当安装的视频监控出现故障时,我们该如何进行简单的视频故障识别呢?如果只依靠人工对视频故障识别排查,工作量是相当大的…