Shark Deng

Interactive Designer @Shanju Design in Shanghai

touched caffe / mxnet / python / wordpress / bootstrap / Arduino / Raspberry Pi / webgl / three.js / PIXI / 3dMax

Email

Github

计算机组成-寄存器/汇编语言

2019-11-19 02:53:22

(一)寄存器来源

cpu本身只负责运算,不负责存储。数据一般存在内存里(RAM/ROM)。cpu要用数据时就去内存读,但cpu的运算速度远高于内存的读写速度,为避免被拖慢,cpu都自带一级、二级缓存(Cache),可被看作速度最快的内存。

但缓存速度还不够快,而且缓存数据地址不固定,每次cpu寻址也会拖慢速度。所以,除了缓存,cpu还自带寄存器(register),来存储最常用的数据。即最频繁使用的变量会放在寄存器里,cpu优先读寄存器,再和内存交互数据。

寄存器不靠地址区分,靠名字区分。每个寄存器有自己的名字,直接告诉cpu去哪个寄存器读取数据,加快速度。

(二)寄存器分类

1)通用寄存器

EAX

EBX

ECX

EDX

EDI

ESI

EBP

2)专用寄存器

ESP:存Stack地址

32位、64位cpu指寄存器的大小,分别可表示2^32、2^64个数。

内存模型

 



——By SharkDeng
如果你喜欢我的文章,欢迎红包赞赏

Leave a Reply

Your email address will not be published. Required fields are marked *