在MASM程序集x86中读取/写入内存

时间:2012-03-08 17:42:54

标签: assembly x86 masm

我一直在努力教自己一些非常基本的装配(输出到控制台,算术)。我想知道如何在内存中存储某些东西(例如一个字节)以及如何从内存中读取它。

理想情况下,不使用HLA的答案将被理解(如果可能的话) 感谢

1 个答案:

答案 0 :(得分:1)

MOV指令就是你要找的!

这是从内存中加载数据的方法

MOV AL,moffs8* Move byte at (seg:offset) to AL
MOV AX,moffs16* Move word at (seg:offset) to AX
MOV EAX,moffs32* Move doubleword at (seg:offset) to EAX

seg表示segment registers(CS,DS,ES,FS,GS,SS代码段,数据段,额外细分等)

这是将数据移动到内存中的方式

MOV moffs8*,AL Move AL to (seg:offset)
MOV moffs16*,AX Move AX to (seg:offset)
MOV moffs32*,EAX Move EAX to (seg:offset)

在此处阅读完整的intel x86指令集 http://download.intel.com/design/intarch/manuals/24319101.pdf