1.立即寻址:操作数作为指令的一部分,紧跟在操作码之后,和指令一起存放在代码段中。这里的代码段是指代码段寄存器还是指内存的代码段?内存的代码段是什么东西?还有"操作数作为指令的一部分,紧跟在操作码之后,和指令一起存放在代码段中"中"紧跟在操作码之后,和指令一起存放在代码段中"这句话什么意思?这里的操作码是不是就是"mov,add"之类的?
2.立即寻址有物理地址?如果有,怎样确定其物理地址?它的段地址和偏移地址是什么?
3"立即寻址模式:即数据直接和指令一起编码,cpu读入执行的时候,无须再通过任何寻址方式,也就是不用通过地址去找数据。从感性上将,这是唯一不用寻址的模式(虽然他称为一种寻址模式)"这句话能再说的明白点嘛?
4.再具体例子说明一下如:mov ax,1234H,回答一下上面三个问题.谢谢
5.基址变址相对寻址:MOV CX,DS:[BX+SI+NUM]这条指令中的DS是不是多余的?BX默认下不是和DS配对嘛?这不是段超越吧?还有这条指令可以写成
MOV CX,DS:NUM[BX+SI],但可以写成"MOV CX,DS:[BX+SI]NUM"形式嘛?
6.为什么这条指令是错的:"mov ax,[100][si+bi]",即为什么不能在100加"[]",是不是intel公司的工程师在设计指令系统时就规定不能这样用啊?
7.符号扩展是什么意思?比如要把8位二进制数扩展为16为,该怎么扩展?十进制正数的是不是直接加8个0?十进制负数的是不是在负数的补码前加8个1,同时把此补码的第八位的1改为0?
8.biso,操作系统,显卡指令在内存的哪一段?电脑开机时(电源刚接通时那一刻)从那条指令开始运行?
9.为什么"立即数不能直接传给段寄存器;两个段寄存器之间不能传递数据."如:mov ds,1234h;mov ds,cs;"是错误的.是不是intel工程师在设计cpu时就不允许这样用啊?
10.立即数不能直接赋给内存,是这样嘛?
11.双操作数指令是不是一定要至少有一个操作数使用寄存器寻址?
12.本人在自己的电脑上运行"mov ax,ds:[1000]"这条指令时,提示错误,这时怎么回事?难道不能这样用?但是教材上的例子就是这样?为什么?我电脑是64位AMDcpu的
13.xlat 操作数嘛?如果有可以是哪些?
14.汇编中的disp是什么?是相对寻址的位移量嘛?如:ss*10+bp+disp(8位或者16位位移量)还是它代表偏移量EA?
15.pop后面的操作数可以是CS段寄存器嘛?教材上说不可以,可是我用自己的电脑试了一下,是可以的.