社区
汇编语言
帖子详情
问一个超级新手的问题:寄存器和存储器有什么不同?
THE_ROCK
2005-10-09 03:29:38
寄存器和存储器有什么不同?
...全文
83
4
打赏
收藏
问一个超级新手的问题:寄存器和存储器有什么不同?
寄存器和存储器有什么不同?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liangbch
2005-10-10
打赏
举报
回复
更正一下:
"这是因为主流cpu内部有8/16K/32K的 L1 cache和 128K/256K/512K/1M L2 cache"
liangbch
2005-10-10
打赏
举报
回复
对计算机来说,硬盘是外存,ram是内存。访问ram的速度大于硬盘,硬盘的数据不能直接访问,必须读入ram才能工作。
对CPU说,ram是外存,寄存器是内存,访问寄存器的速度大于ram。虽说cpu可直接访问内存,但是对80x86 cpu,必须要求两个操作数不能都是ram.
对早期的cpu(8086),访问内存的速度比访问寄存器慢的多,见下表:mov指令的执行时间:
Operands 808x 286 386 486 Bytes
reg,reg 2 2 2 1 2
mem,reg 9+EA 3 2 1 2-4 (W88=13+EA)
reg,mem 8+EA 5 4 1 2-4 (W88=12+EA)
mem,immed 10+EA 3 2 1 3-6 (W88=14+EA)
reg,immed 4 2 2 1 2-3
mem,accum 10 3 2 1 3 (W88=14)
accum,mem 10 5 4 1 3 (W88=14)
segreg,reg16 2 2 2 3 2
segreg,mem16 8+EA 5 5 9 2-4 (W88=12+EA)
reg16,segreg 2 2 2 3 2
mem16,segreg 9+EA 3 2 3 2-4 (W88=13+EA)
尽管cpu访问ram的速度很慢,但当前主流的cpu在执行一条包含对ram访问的指令时,可在1个clock完成。这是因为主流cpu内部有8/16K/32K的 L1 cache和 128K/256K/512K/1M cache,尽管一个指令包括对ram的访问,但事实上,在90%的情况下,cpu 并不会真正去访问ram中的数据,因ram中数据己经读入L1 chche 或者L2 cache,而cpu访问cache 中的数据比访问ram中数据快得多。
大熊猫侯佩
2005-10-09
打赏
举报
回复
若连这个也搞不清楚的话,建议仔细看 计算机组成与结构
robin_wan
2005-10-09
打赏
举报
回复
寄存器在CPU中
存储器为内存
每个进程都被赋予它自己的虚拟地址空间。对于3 2位进程来说,这个地址空间是4 G B
程序
存储器
在计算机的主
存储器
中专门用来存放程序、子程序的
一个
区域。指令
寄存器
用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据
寄存器
(DR)中,然后再传送至IR。指令划分为操作码和地址...
什么是BIOS?
什么是BIOS?w//计算机用户在使用计算机的过程中,都会接触到BIOS,它在计算机系统中起...准确地说,BIOS是硬件与软件程序之间的
一个
“转换器”或者说是接口(虽然它本身也只是
一个
程序),负责解决硬件的即时需求,并按
嵌入式
新手
必看:4 大维度解锁基础知识点(含通信 / 编程 / 硬件)100 个嵌入式核心
问
题
,从入门到进阶一次吃透
入门级:51 单片机(STC89C52、AT89C51),资料丰富、性价比高,适合
新手
入门。中低端通用:AVR 系列(ATmega328P、ATtiny13),功耗低、指令简洁,Arduino 常用核心。中高端通用:STM32 系列(STM32F103、STM32L476...
一个
程序在计算机中是如何运行的?
超级
干货!!!
很多java自学者刚开始都会写一段HelloWorld的代码,可是又有多少人会思考这段简单的代码的一些内部逻辑呢? 写的这段程序员保存在了什么地方? CPU和内存是怎么回事?跟我写的代码有什么关系?
一个
程序在计算机中...
Linux操作系统二十
问
,这些
问
题
你都懂么?
A:1)Linux系统由四个部分组成:用户进程,系统调用接口、Linux内核子系统和硬件;2)Linux内核处于用户进程和硬件之间,包括系统调用接口和Linux内核子系统。Q2.Linux内核由哪几部分组成?各个子系统的主要功能是...
汇编语言
21,497
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章