汇编指令中给AX寄存器清0并使CF=0,下面那个是错的:MOV AX,0 XOR AX,AX SUB AX,AX AND

pearl10302022-10-04 11:39:541条回答

汇编指令中给AX寄存器清0并使CF=0,下面那个是错的:MOV AX,0 XOR AX,AX SUB AX,AX AND AX,0

已提交,审核后显示!提交回复

共1条回复
木木聋 共回答了13个问题 | 采纳率84.6%
第一条,MOV是错的.
MOV指令不影响标志位,无法使CF=0
1年前

相关推荐

一条汇编指令AND R0,R0,#3 ;该指令保持R0的0、1位,其余位清零。(ARM汇编指令)我不明白为什么是 “该指
一条汇编指令
AND R0,R0,#3
;该指令保持R0的0、1位,其余位清零。(ARM汇编指令)
我不明白为什么是 “该指令保持R0的0、1位,其余位清零”, 初学。希望各位帮帮忙
夜的风很凉1年前1
Zspirit 共回答了17个问题 | 采纳率94.1%
这条指令的意思你该明白,是R0与立即数十进制3相与后放入R0,即与二进制#0000 0011B相与,任何数与1相与保持不变为,与0相与则都为0,所以再放入R0后,R0的0、1位不变,其余位清零。
汇编指令(out)语法以下无语法错误的是?1.out ax,30h2.out bx,al3.out al,dx4.out
汇编指令(out)语法
以下无语法错误的是?
1.out ax,30h
2.out bx,al
3.out al,dx
4.out 30h,ah
carmenpolaris1年前1
laozhu025 共回答了21个问题 | 采纳率95.2%
四个都错误
语法是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所指出的端口向外设输出
写出相应的汇编指令或指令序列(1) 将AL中的高4位变为全0。 (2)将1234H压入堆栈。 (3) 交换变量VAR1,
写出相应的汇编指令或指令序列
(1) 将AL中的高4位变为全0。 (2)将1234H压入堆栈。 (3) 交换变量VAR1,VAR2的值。
伊特鲁丽亚1年前1
紫色光辉 共回答了19个问题 | 采纳率84.2%
1. and al,00001111B
2. push 1234H
3. push VAR1
push VAR2
pop VAR1
pop VAR2

大家在问