Memory 在存储器中存储数据
我想知道,数据将如何存储在内存中;或者下面的代码会有什么影响 数据1 DB 1,2,3 我的数据是如何存储的。。 如果我使用的是80386或以上的英特尔微处理器。。Memory 在存储器中存储数据,memory,Memory,我想知道,数据将如何存储在内存中;或者下面的代码会有什么影响 数据1 DB 1,2,3 我的数据是如何存储的。。 如果我使用的是80386或以上的英特尔微处理器。。 我是一个新的与这些东西,所以请帮助 好的,db定义了一个字节序列,因此您将从data1开始,在不断增加的内存位置中获得三个字节1、2和3 如果data1位于0x00001234,则两条语句db 1,2,3和db 3,2,1(即一条语句或另一条语句,而不是一条语句后跟另一条语句)将给出: DB 1,2,3
我是一个新的与这些东西,所以请帮助 好的,
db
定义了一个字节序列,因此您将从data1
开始,在不断增加的内存位置中获得三个字节1、2和3
如果data1
位于0x00001234,则两条语句db 1,2,3
和db 3,2,1
(即一条语句或另一条语句,而不是一条语句后跟另一条语句)将给出:
DB 1,2,3 DB 3,2,1
+------+ +------+
0x00001234 | 0x01 | | 0x03 |
+------+ +------+
0x00001235 | 0x02 | | 0x02 |
+------+ +------+
0x00001236 | 0x03 | | 0x01 |
+------+ +------+
例如,检查此调试会话:
c:\src> debug
-a 100
1388:0100 db 1,2,3,4
1388:0104 db 9,8,7,6
1388:0108
-d 100 10f
1388:0100 01 02 03 04 09 08 07 06-00 00 00 00 00 00 00 00 ................
-q
c:\src> _
您可以看到1
、2
、3
和4
(按该顺序)通过0x0103
和9
、8
、7
和6
进入内存位置(同样,按指定顺序)进入内存位置0x0104
到0x0107
好的,db
定义了一个字节序列,因此您将从data1
开始,在增加的内存位置中获得三个字节1、2和3
如果data1
位于0x00001234,则两条语句db 1,2,3
和db 3,2,1
(即一条语句或另一条语句,而不是一条语句后跟另一条语句)将给出:
DB 1,2,3 DB 3,2,1
+------+ +------+
0x00001234 | 0x01 | | 0x03 |
+------+ +------+
0x00001235 | 0x02 | | 0x02 |
+------+ +------+
0x00001236 | 0x03 | | 0x01 |
+------+ +------+
例如,检查此调试会话:
c:\src> debug
-a 100
1388:0100 db 1,2,3,4
1388:0104 db 9,8,7,6
1388:0108
-d 100 10f
1388:0100 01 02 03 04 09 08 07 06-00 00 00 00 00 00 00 00 ................
-q
c:\src> _
您可以看到1
、2
、3
和4
(按该顺序)通过0x0103
和9
、8
、7
和6
进入内存位置(同样,按指定顺序)进入内存位置0x0104
到0x0107
即1、2和3将按递增顺序保存??是的,按升序保存在连续的内存位置。然后下一个“语句”将发生在0x00001237
。查看更新。@Karan-是的,因为您是按递增顺序列出的。因为我是按递增顺序列出的。。??这是否意味着DATA1 db 3,2,1会以相同的顺序1,2,3存储相同的数据,或者wud的顺序是3,2,1???@Karan,db 3,2,1
会以相反的顺序存储它们,3然后2然后1。它完全等同于三个单独的语句db 3
,db 2
,db 1
。也就是说,一、二和三将按递增顺序保存??是的,按升序保存在连续的内存位置。然后下一个“语句”将发生在0x00001237
。查看更新。@Karan-是的,因为您是按递增顺序列出的。因为我是按递增顺序列出的。。??这是否意味着DATA1 db 3,2,1会以相同的顺序1,2,3存储相同的数据,或者wud的顺序是3,2,1???@Karan,db 3,2,1
会以相反的顺序存储它们,3然后2然后1。它完全等同于三个单独的语句db3
,db 2
,db 1
。