汇编指令(out)语法以下无语法错误的是?1.out ax,30h2.out bx,al3.out al,dx4.out

1个回答

  • 四个都错误

    语法是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所指出的端口向外设输出