mov+ax+cs
答:MOV AX,CS 这个指令是正确的。MOV CS,AX 是错的。因为CS是代码段寄存器,这个寄存器保存的是代码段的首地址,这个寄存器只能由系统管理,用户不能随便修改,mov cs , ax 会修改CS,所以不允许这种指令执行
答:MOV AX,CS是对的。
答:两者完全不同,前者是将本处的代码段地址置入ax,可理解为静态的概念;后者是将程序运行时的cs,更具体点是要将进入中断时的cs置入ax,是动态的。
答:沙里波特,更是笑死人,以为绕过操作系统,mov cs,ax就可以执行了。cs段寄存器不能修改是intel规定的,意思是只要你使用了x86架构芯片,这条指令就是非法的。以下是一段主引导扇区程序,没有操作系统,在bochs虚拟机上运行:下面是执行的结果,可以看到,处理器确实可以反汇编"8EC8"成"mov cs,ax",但...
答:是合法的指令。对、不对,就看你的需要了。
答:。从理论上来说,Mov cs,ax这一句是可以人为理解的,从语法上来说完全正确,但是CPU的设计工程师们在制造CPU的时候根本就不给这一条指令生存的机会,CPU的内部结构里没有这条指令。也就是说——你写的指令 MOV CS,AX CPU根本不认识,无法正确执行,也就无从说它是合法的了。
答:MOV BX, 6 这条指令执行完以后,BX的内容是0006H MOV AX, CS:[BX]这条指令是将内存代码段中、偏移地址是0006H的一个16位字单元中的数据传送到AX中。BX中的0006H是偏移地址,AX最后获得的数据是这个地址中存放的内容,而不是地址值。
答:数据传送指令是不能把数据传送给CS的,因为CS是代码段寄存器,CS如果被修改程序就无法执行。这个错误没法改,最多就是把CS改写成DS或SS或ES。
答:如果你从头看下来的话怎么可能不懂这什么意思...王爽的书写的很详细啊
答:mov ax,cs和mov ss,ax 这两条语句就是把代码段的段基址和堆栈段的段基址设置的一样了,即CS和SS的值一样.这样,给SP给的值,按一般的约定,第一给SP给值就是设置堆栈的底部,就是堆栈所占用的空间,这里只有这13个字空间是可用的,所以给SP给值就是26,换成十六进制就是001AH,这是第一个空填MO...
网友评论:
荆松19822405197:
微机.MOV CS,AX 是错的.那MOV AX,CS 对不对呢? -
21227广华
: MOV AX,CS 这个指令是正确的. MOV CS,AX 是错的.因为CS是代码段寄存器,这个寄存器保存的是代码段的首地址,这个寄存器只能由系统管理,用户不能随便修改,mov cs , ax 会修改CS,所以不允许这种指令执行
荆松19822405197:
mov cs , ax 为什么是错的 -
21227广华
: 因为CS是代码段寄存器,这个寄存器保存的是代码段的首地址,这个寄存器只能由系统管理,用户不能随便修改,mov cs , ax 会修改CS,所以不允许这种指令执行
荆松19822405197:
汇编语言寻址方式问题 -
21227广华
: mov ax,cs ;寄存器寻址 mov ds,ax ;寄存器寻址 mov bx,100 ;立即数寻址 mov ax,[150] ;存储器直接寻址 add bx,ax ;寄存器寻址 mov al,[bx] ;基址寻址 add al,[bx+1] ;相对基址寻址 mov si,2 ;立即数寻址 add al,[bx+si] ;基址加变址寻址 mov ah,0 ;立即数寻址 mov ch,0 ;立即数寻址 mov cl,[bx+si+1] ;相对基址加变址寻址 add ax,cx ;寄存器寻址
荆松19822405197:
mov AX,[SI] 和 MOV [SI],AX 各自什么意思,有什么区别,假设DS=2000H,SI=1234H -
21227广华
: “mov AX,[SI]”表示把寄存器SI所指内存单位的字传送到寄存器AX中,“MOV [SI],AX”表示把寄存器AX中的字传送到寄存器SI所指内存单位.MOV 指令将源操作数复制到目的操作数.作为数据传送(data transfer)指令,它几乎用在所有程序...
荆松19822405197:
汇编指令MOV DS,CS是否合法,为什么? -
21227广华
: 不合法,因为mov不允许源操作数与目的操作数都是段寄存器.
荆松19822405197:
关于汇编中的MOV AX, CS: DATA4 -
21227广华
: MOV AX,CS:DATA4 相当 LEA DI,DATA4 MOV AX,CS:[DI] 为什么每次都是把寄存器AX的值传给相应的BX,CX,DX,SI呢? 因为,AX速度比较快 MOV AX,CS:DATA4 MOV BX,CS:DATA4 ... 就慢多了
荆松19822405197:
关于8086寻址方式 -
21227广华
: 一、立即寻址方式 MOV AL,06H 二、寄存器寻址方式 MOV BX,AX 三、直接寻址方式 MOV AX,[2000H] 四、寄存器间接寻址方式 MOV AX,[SI] 五、寄存器相对寻址方式 MOV AX,COUNT[SI] 六、基址变址寻址方式 MOV AX,[BX][DI] 七、相对基址变址寻址方式 MOV AX,MASK[BX][SI]
荆松19822405197:
为什么寄存器存址指令 MOV DS,AX 合法,而MOV CS,AX不合法呢? 急急求教!
21227广华
: 从两个方面来讲:一、寄存器和程序执行期的意义 寄存器DS是data segment也即数据段地址存放的地方,程序运行开始后需立即指定数据段,否则不能正确使用程序的数据.寄存器CS是code segment也即代码段地址存放的地方,一个程序执...
荆松19822405197:
设有语句ASSUME CS:DESG DS:DESG. DESG段中有语句 X DB 1,则执行MOV AX,X时,X的段值从CS中取还是从DS取 -
21227广华
: cs和ds中的段值不是都一样吗,不过对于你的问题应该是从cs中取,因为语句mov ax,x 是在代码段,所以段首值应该从cs里取
荆松19822405197:
下列汇编代码的MOV AX,DSEG是什么意思,操作后AX发生了什么变化,请解释一下 -
21227广华
: 编程时,可以编写许多、许多的段,如:DSEG SEGMENT、CSEG....在操作系统管理下,执行本程序时,操作系统,在存储器中,安排了这些段.需要用这些段地址,设定 DS、SS、ES.MOV AX,DSEG MOV DS,AX 这两句,就是把操行系统安排给 DSEG 的地址,送到 DS.