㈠ 关于汇编语言的基本数据存储问题
mov
ax,1
;寄存器赋1这个我知道,
mov
ds:[0],1
;这个是内存还是硬盘??
--------------内存
push
ax
;我提前定义了栈段,把ax压入栈里,那么我想问
,我们的栈是在内存,还是在硬盘存储器里?
------------------------内存
pop
ax
;把栈顶值赋给ax,sp+2指向了下一个栈顶,那么我们原是的(sp+2)-2的数据还在吗?
;也是就出栈后在栈里的数据还在吗?
---------在
问题二,我们汇编指令处理的数据idata
可以是各种数制吗?
mov
ax,1
mov
bx,27
;这指令合法吗?
------------合法
add
ax,bx
;这里运行后结果是10进制的数还是16进制数?----------------计算机只认二进制的数
㈡ 关于汇编语言中数据存储的问题
一个字符是8bit,两个字符是16bit,位常指bit,在十六进制数中指4bit,0xFFFF是四位, ax中可以存两个字节,十六进制数在ax中是按顺序存储的。如ascii码A(0x0041)和B(0x0042),在ax中存储为0x0041,在ax+1中存储为0x0042
㈢ 汇编语言的基本数据类型
汇编语言中的基本数据类型有:字节(ASCII码、短整型、无符号短整型)、字(整型、无符号整型)、双字(长整型、无符号长整型)、8字节整数(DQ)、10字节整数(DT)等。
符合数据类型则有:字符串、数组、记录、结构 等。
㈣ 请问汇编语言中的存储器操作数是什么
指令的操作数有四种:
1、立即数,即常数,直接在汇编指令中给出的二进制、十进制、8进制、16进制
或者ascii码字符等
2、寄存器,操作数存放在寄存器中。
3、存储器,操作数放在内存单元中,可以是字节、字、双字等等。
4、端口,操作数来自外设端口。通过in、out指令操作。
㈤ 汇编语言存储器操作数是指什么
我之前的理解是加上方括号的,例如【bx】
--这个确实是存储器操作数。
在数据段定义了result
db
?
在代码段有inc
result
和mov
result,0.
可是书上写mov
inc对象有写存储器操作数,没写可以是变量啊?
变量和存储器操作数是什么关系?
--在数据段里面的东西,都是存储器操作数。
不属于存储器操作数的有:寄存器、立即数。
采纳答案,所答非所问。
㈥ 汇编语言里存储器操作数到底有没有默认数据类型啊
计算机中的内容就是一些0和1的组合,其本身没有任何含义。至于类型啊、字母、数字等,都是人为赋予的,或者说怎样解释。
教材、老师讲的,不可不信,但也不可笃信。关于存储器操作数的默认数据类型,没有默认这一说。各种编译器对数据类型做了一些规定,你按着规定来定义和使用数据就不会出错。DEBUG是调试软件,不是编译器,当然也就没有数据类型的规定,需要明确指定数据类型。
DEBUG不知道MOV
[SI],5的5是多少位的,8位正确,16位也对,32位也不错,所以需要明确指定数据类型。而寄存器则不同,寄存器是有固定位数的,只要源操作数不超过它们能够容纳的数据范围,就不会出错,如,
MOV
AL,5
MOV
BX,5
MOV
ECX,5
都是正确的。
㈦ 在汇编语言中,为什么两个存储器之间不能直接数据传送
总线数量吧,因为只有一个数据总线,所以一次只能读存储器数据或写存储器数据,两个存储器之间传数据需要同时读一个再写一个,冲突
㈧ 如何用汇编语言把外部数据存储器的数据传到内部存储器
内外交换用MOVX指令,并通过寄存器间接寻址Ri或者累加器A
MOV DPTR,#1000H ;将外部的首地址送入DPTR
MOVX A, @DPTR ;用间接寻址送入内部R1
下面是几个例子
MOVX A,@RI
MOVX @RI,A
MOVX @DOTR,A
自己多翻翻书。会有所获!!一定要多看多练!!!!
㈨ 汇编语言中的存储器是什么
主要用来存放程序和数据,这里指的是内存储器或主存储器,分为:
随机存储器(RAM)
只读存储器(ROM)
存储器由许多存储单元组成,每个单元的位数可以是1位、4位、8位、16位等,其中8位为一个字节(Byte)。
存储器的容量是指存储器所能存储的二进制位数,通常用能存储的字节数来衡量,单位有KB、MB、GB等。
存储器中每个存储单元都有一个编号,称为存储地址,简称地址。微处理器就是按照存储单元的地址来访问内存的。
对存储器的访问操作有读操作和写操作,用于实现从存储器中读出信息和把信息写入存储器。
每当需访问存储器时:
(1)由微处理器给出地址;
(2)通过地址译码器选择相应的存储单元;
(3)微处理器发出读或写控制信号,从而从指定地址的单元读出数据或把数据写入指定地址的存储单元。