立即数是什么意思

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/10 22:35:02
立即数是什么意思
xT]OA+>7kG_L&}36V@Xei+*~ Dhusg'B"M3;Ҙ8~5m\͏~Xar)W FD%6-"LY2L1+dWq|E,s f59:j,Df*߬S(kPN43ml}R zm?YDoU\W͢yɾ(vN쯲zRInWH+t@B"x⍚oIn<iz>HPee$0x:μz7>oUu|jo[yr?ݟ#ta֯8)l v7 ~!Pe^ =Mk!NPȬaqr -rx#:6*S$Qڴ͊]VQEKafє^QVdVFUqE)}Uw$ՉZncҎ?5Ǐ[F5dֱŚ̰8SG(&-,qq̋{o< 07 fb""-.BWG"iq&JMZu"sཁ4jOa0LKڅ< AYO®xN.q. wv);_VWpU\/,>!;W ߿:CKgB{R4 PaQxpGHp4yLKj

立即数是什么意思
立即数是什么意思

立即数是什么意思
在8086等CPU处理器中可按下面例子.单片机为例.
通常把在立即寻址方式指令中给出的数称为立即数.
立即数可以是8位、16位或32位,该数值紧跟在操作码之后.如果立即数为16位或32位,那么,它将按“高高低低”的原则进行存储.例如:
MOV AH,80H ADD AX,1234H MOV ECX,123456H
MOV B1,12H MOV W1,3456H ADD D1,32123456H
其中:B1、W1和D1分别是字节、字和双字单元.
以上指令中的第二操作数(源操作数)都是立即数,在汇编语言中,规定:立即数不能作为指令中的第一操作数(目的操作数).该规定与高级语言中“赋值语句的左边不能是常量”的规定相一致.
立即数寻址方式通常用于对通用寄存器或内存单元赋初值.
下面以ARM汇编编译器为例:
立即数方式:每个立即数由一个8位的常数循环右移偶数位得到.其中循环右移的位数由一个4位二进制的两倍表示.如果立即数记作,8位常数记作immed_8,4位的循环右移值记作rotate_imm,则有:
=immed_8循环右移(2*rotate_imm)
这样并不是每一个32位的常数都是合法的立即数,只有能够通过上面构造方法得到的才是合法的立即数.