ZKX's LAB

立即数 寄存器操作数 存储器操作数 能不能向短寄存器写立即数

2020-07-26知识7

立即数 寄存器操作数 存储器操作数 立即数是什么意思,最好举个例子?立即能从指令流中得到的数,MOV AX,0FFFFH;对应机器指令为:B8 FF FF,其中的0FFFFH即为立即数,它存在于指令中,可立即获得寄存器操作数是什么意思,最好举个例子?上例中的 AX 即为寄存器操作数,操作数本身存放于寄存器中,在指令中只是给出了几个位的代码来表示它具体存放在那个寄存器中。以下是一些指令的机器码和对应的汇编指令B80000 MOV AX,0000BAFFFF MOV DX,FFFFB9FFFF MOV CX,FFFFBBFFFF MOV BX,FFFF存储器操作数是什么意思,最好举个例子?那就是存放在内存器中的操作数,如:MOV SI,[2000H]中的[2000H]MOV[BX+SI+02],AX中的[BX+SI+02]这些操作数实际被存放于内存储器中,被操作或运算时需要从存贮器中取出并被CPU接受送到运算器等参与操作运算。内存操作数是什么意思,最好举个例子?没太听说,要有的话,也就和存储器操作数没有多大差别汇编~~~立即数不能直接传入段寄存器,为什么?? 因为没有这样的指令,这就是根本的限制 没有指令.只能通过累加器A来转 没办法直接把立即数放到段寄存器中。段寄存器用于控制程序段的访问。要修改段寄存器,那么可以通过AX。add源操作数是立即数,目标操作数可以是段寄存器吗 可以的。对段寄存器的操作,从网上抄的如下:段寄存器的操作有一些限制 –-段寄存器属专用寄存器,对他们的操作能力有限不允许立即数传送给段寄存器 MOV DS,100H;非法指令:立即数不能传送段寄存器不允许直接改变CS值 MOV CS,[SI];不允许使用的指令?不允许段寄存器之间的直接数据传送 MOV DS,ES;非法指令:不允许段寄存器间传送为什么8086CPU不支持将数据直接送入段寄存器的操作? 最近在学习汇编语言,书上对于这个问题的答复是属于硬件设计的问题,但是没有具体讲明白,所以求问各位具…汇编语言 为什么不能用立即数给段地址赋值 用通过寄存器间接赋值呢(应该有特殊的原因,是为什么呢) 你问的这个问题,反正书上也没有说,我也不太肯定。只是猜想,猜想而已。反正立即数就不能给地址赋值,这个是肯定的。原因:我感觉和寄存器的结构有关吧,在我用汇编的1年。

#数据寄存器#操作数#汇编指令#段寄存器#立即数

随机阅读

qrcode
访问手机版