0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

计算机从内存中进行取指过程

嵌入式应用开发 ? 来源:嵌入式应用开发 ? 作者:嵌入式应用开发 ? 2022-09-29 18:41 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

计算机的总线可以分为3种:数据总线,地址总线和控制总线。这里不对控制总线进行描述。数据总线用于进行数据信息传送。数据总线的位数一般与CPU的字长一致。

一般而言,数据总线的位数跟当前机器int值的长度相等。例如在16位机器上,int的长度是16bit,32位机器则是32bit。这个计算机一条指令最多能够读取或者存取的数据长度。大于这个值,计算机将进行多次访问。这也就是我们说的64位机器进行64位数据运算的效率比32位要高的原因,因为32位机要进行两次取指和运行,而64位机却只需要一次!

地址总线专门用于寻址,CPU通过该地址进行数据的访问,然后把处于该地址处的数据通过数据总线进行传送,传送的长度就是数据总线的位数。地址总线的位数决定了CPU可直接寻址的内存空间大小,比如CPU总线长32位,其最大的直接寻址空间长232KB,也就是4G

这也就是我们常说的32位CPU最大支持的内存上限为4G(当然,实际上支持不到这个值,因为一部分寻址空间会被映射到外部的一些IO设备和虚拟内存上。现在通过一些新的技术,可以使32位机支持4G以上内存,但这个不在这里的讨论范围内)。

一般而言,计算机的地址总线和数据总线的宽度是一样的,我们说32位的CPU,数据总线和地址总线的宽度都是32位。

计算机访问某个数据的时候,首先要通过地址总线传送数据存储或者读取的位置,然后在通过数据总线传送需要存储或者读取的数据。一般地,int整型的位数等于数据总线的宽度,指针的位数等于地址总线的宽度。计算机的基本访问单元学过C语言的人都知道,C语言的基本数据类型中,就属char的位数最小,是8位。我们可以认为计算机以8位,即1个字节为基本访问单元。小于一个字节的数据,必须通过位操作来进行访问。

内存访问方式

如图1所示,计算机在进行数据访问的时候,是以字节为基本单元进行访问的,所以可以认为,计算每次都是从第p个字节开始访问的。访问的长度将由编译器根据实际类型进行计算,这在后面将会进行讲述。

poYBAGM1dkKAYjkSAAAvGbE_yJI194.png

sizeof关键字
sizeof关键字是编译器用来计算某些类型的数据的长度的,以字节为基本单位。例如:
sizeof(char)=1; sizeof(int)=4;

sizeof(Type)的值是在编译的时候就计算出来了的,可以认为这是一个常量!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机
    +关注

    关注

    19

    文章

    7679

    浏览量

    90993
  • 内存
    +关注

    关注

    8

    文章

    3128

    浏览量

    75364
  • 总线
    +关注

    关注

    10

    文章

    2962

    浏览量

    89907
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    工业计算机的重要性

    于管理用于产品检查、数据记录和数据分析的运动控制系统,以提高制造生产率。例如,汽车行业工业边缘计算机中受益匪浅,这些计算机用于自动化制造汽车所涉及的各种过程。工业边
    的头像 发表于 07-28 16:07 ?169次阅读
    工业<b class='flag-5'>计算机</b>的重要性

    自动化计算机的功能与用途

    工业自动化是利用自动化计算机来控制工业环境中的流程、机器人和机械,以制造产品或其部件。工业自动化的目的是提高生产率、增加灵活性,并提升制造过程的质量。工业自动化在汽车制造中体现得最为明显,其中许多
    的头像 发表于 07-15 16:32 ?206次阅读
    自动化<b class='flag-5'>计算机</b>的功能与用途

    工业计算机如何设计用于冲击和振动

    探讨了使工业计算机能够抵御冲击和振动的关键设计原则和功能。了解工业环境中的冲击和振动冲击是突然的、高强度的冲击,例如重物撞击系统或运输过程中突然停止。另一方面,振
    的头像 发表于 05-19 15:27 ?167次阅读
    工业<b class='flag-5'>计算机</b>如何设计用于冲击和振动

    计算机网络入门指南

    计算机网络是将地理位置不同且具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
    的头像 发表于 04-22 14:29 ?1189次阅读
    <b class='flag-5'>计算机</b>网络入门指南

    虚拟内存计算机性能的影响

    ,它允许计算机使用硬盘空间来模拟物理内存。当物理内存(RAM)不足以容纳当前所有活动的程序和数据时,操作系统会将部分数据RAM移动到硬盘上的一个特殊区域,称为交换空间(swap sp
    的头像 发表于 12-04 09:17 ?3626次阅读

    工业中使用哪种计算机

    在工业环境中,工控机被广泛使用。这些计算机的设计可承受极端温度、灰尘和振动等恶劣条件。它们比标准消费类计算机更耐用、更可靠。工业计算机可控制机器、监控流程并实时收集数据。其坚固的结构和专业功能
    的头像 发表于 11-29 14:07 ?755次阅读
    工业中使用哪种<b class='flag-5'>计算机</b>?

    量子计算机与普通计算机工作原理的区别

    ? 本文介绍了量子计算机与普通计算机工作原理的区别。 量子计算是一个新兴的研究领域,科学家们利用量子力学,制造出具有革命性能力的计算机。虽然现在的量子
    的头像 发表于 11-24 11:00 ?1596次阅读
    量子<b class='flag-5'>计算机</b>与普通<b class='flag-5'>计算机</b>工作原理的区别

    工业计算机类型介绍

    工业领域没有计算机的世界就像没有管弦乐队的交响乐,缺乏实现最佳性能所需的和谐和精确度。计算机彻底改变了工业的运作方式,将效率、准确性和创新推向了新的高度。事实上,根据最近在印度进行的一项研究
    的头像 发表于 11-04 15:56 ?708次阅读
    工业<b class='flag-5'>计算机</b>类型介绍

    ROM对计算机性能的影响

    是一种非易失性存储器,即使在断电的情况下也能保持数据不丢失。它通常用于存储固件,这些固件是计算机启动和运行操作系统所必需的。ROM的内容在制造过程中被写入,并且通常不能被用户更改。 ROM的类型 PROM(可编程ROM) :用户可以通过特殊的编程设备写
    的头像 发表于 11-04 10:31 ?1290次阅读

    计算机接口位于什么之间

    地传输。计算机接口可以分为内部接口和外部接口两大类。 内部接口位于计算机内部各个部件之间,如CPU、内存、主板、硬盘、显卡等。外部接口则位于计算机与外部设备之间,如键盘、鼠标、显示器、
    的头像 发表于 10-14 14:02 ?1391次阅读

    计算机内存容量有什么作用

    计算机内存容量,作为一个核心概念,在计算机科学、信息技术以及日常使用中扮演着至关重要的角色。它不仅直接关系到计算机处理数据的能力,还影响着用户体验、系统性能以及多任务处理的效率。在深
    的头像 发表于 09-10 14:47 ?2643次阅读

    计算机进行程序控制工作的基本原理是怎样的

    的基础。 中央处理器(CPU) :计算机的大脑,负责解释和执行指令。 内存(RAM) :临时存储数据和程序指令。 存储设备(如硬盘、固态硬盘) :长期存储数据和程序。 输入/输出设备 :如键盘、鼠标、显示器等,用于与用户交互。 2. 指令和程序 指令
    的头像 发表于 09-04 16:57 ?1610次阅读

    简述计算机总线的分类

    计算机总线作为计算机系统中连接各个功能部件的公共通信干线,其结构和分类对于理解计算机硬件系统的工作原理至关重要。以下是对计算机总线结构和分类的详细阐述,内容将涵盖总线的基本概念、内部结
    的头像 发表于 08-26 16:23 ?5291次阅读

    晶体管计算机和电子管计算机有什么区别

    晶体管计算机和电子管计算机作为计算机发展史上的两个重要阶段,它们在多个方面存在显著的区别。以下是对这两类计算机在硬件、性能、应用以及技术发展等方面区别的详细阐述。
    的头像 发表于 08-23 15:28 ?3743次阅读

    微处理器如何控制计算机系统

    微处理器,作为计算机系统的核心部件,承担着控制整个计算机系统运行的重要任务。它不仅是计算机的运算中心,还是控制中心,负责执行程序指令、处理数据以及协调计算机各部件之间的工作。以下将详细
    的头像 发表于 08-22 14:21 ?1006次阅读