汇编指令(out)语法
以下无语法错误的是?1.outax,30h2.outbx,al3.outal,dx4.out30h,ah给出详细的解释!...
以下无语法错误的是?
1.out ax,30h
2.out bx,al
3.out al,dx
4.out 30h,ah
给出详细的解释! 展开
1.out ax,30h
2.out bx,al
3.out al,dx
4.out 30h,ah
给出详细的解释! 展开
4个回答
展开全部
四个都错误
语法是out port,acc
1、要是交换下操作数,倒是正确的。或者改为in指令。
2、bx错误,port端口号超过255时,应该放到dx中。
3、还是交换下操作数就对了,或者改为in指令。
4、ah错误,如果输出的数据是8位,则应该使用al寄存器。
总结:
语法格式:out port,acc
1)port为端口地址。可以是0-0ffffh
小于255时,可用直接寻址或间接寻址;大于255,
如果端口号在0-255(0ffh)之间,可用直接寻址或间接寻址,用于间接寻址的寄存器是DX。
比如
直接寻址:out 30h,al
间接寻址:mov dx,30h
out dx,al
如果超过255(0ffh)必须用间接寻址。比如:
mov dx,378h
mov dx,al
2)acc必须是累加器。外设是8位端口时,用AL寄存器;外设为16为端口时,用AX寄存器。
比如:
out dx,al ;将al中的字节数据通过dx所指出的端口向外设输出
out dx,ax ;将ax中的字数据通过dx所指出的端口向外设输出
语法是out port,acc
1、要是交换下操作数,倒是正确的。或者改为in指令。
2、bx错误,port端口号超过255时,应该放到dx中。
3、还是交换下操作数就对了,或者改为in指令。
4、ah错误,如果输出的数据是8位,则应该使用al寄存器。
总结:
语法格式:out port,acc
1)port为端口地址。可以是0-0ffffh
小于255时,可用直接寻址或间接寻址;大于255,
如果端口号在0-255(0ffh)之间,可用直接寻址或间接寻址,用于间接寻址的寄存器是DX。
比如
直接寻址:out 30h,al
间接寻址:mov dx,30h
out dx,al
如果超过255(0ffh)必须用间接寻址。比如:
mov dx,378h
mov dx,al
2)acc必须是累加器。外设是8位端口时,用AL寄存器;外设为16为端口时,用AX寄存器。
比如:
out dx,al ;将al中的字节数据通过dx所指出的端口向外设输出
out dx,ax ;将ax中的字数据通过dx所指出的端口向外设输出
展开全部
4,正确,out指令形式只能是 out 端口,数据
端口范围00-0ffff,可以放在DX中所以123均错
端口范围00-0ffff,可以放在DX中所以123均错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
3
out 的格式是out 给出的端口号(8位,0-255),al
或out dx(含16位的端口号), al/ax
out 的格式是out 给出的端口号(8位,0-255),al
或out dx(含16位的端口号), al/ax
追问
3不是与 "out dx(含16位的端口号), al/ax "相矛盾了?
追答
啊,对不起,4条指令没有一条是正确的
更正下:
out 的格式是out 给出的端口号(8位,0-255),al/ax
或out dx(含16位的端口号), al/ax
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
同样学习了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询