码迷,mamicode.com
首页 > 其他好文 > 详细

关于内存地址和寄存器中的高位与低位简介

时间:2015-12-22 16:06:05      阅读:447      评论:0      收藏:0      [点我收藏+]

标签:

我们可以假设内存表就是一张纸。当我输入一个数据的时候,软件就会为我们在内存中开辟一个地址,以往内存表中存放数据,如这里就是往这个地址开始写入数据:0040339C。
我们对内存表的高位和低位的理解就可以想做这里就是一张白纸。我们把每个空格都当作一个位置,从0~1000开始计数,写在最前的就是低位,比如说写四个数,从0~3。GAME数据的低位到高位就是从G到E。

之后呢,我们从内存表中取数据,放入寄存器中,我们可以把寄存器比做一个水桶,我们放入数据的时候肯定是把"水"先倒到水筒的底部。
如我们从内存中取GAME放入到水桶中的话 水桶中存放的数据就成了EMAG ,也就是 45 4D 41 47 (注意每个字节是两个16进制的字符)
而水桶的高位和地位呢,想必大家会很明白,水桶的最上方就是高位,水桶底就是低位,所以EMAG 数据的高低位就是 E~G(E为最高位 G为最低位)


这样大家就清楚高高低低原则了 (低位用D表示,高位用G表示)
                                D            G                          G             D
如果把内存地址的数据 01 02 03 04  放到寄存器就是 04 03 02 01
                             G            D                          D             G
如果把寄存器的数据 04 03 02 01  放到内存地址为 01 02 03 04

数据的传递中,是遵循高高低低原则的,相信大家按照这个思路去理解,会更简单些~~

关于内存地址和寄存器中的高位与低位简介

标签:

原文地址:http://www.cnblogs.com/ichau/p/5066759.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!