例数字字符的ASCII一→对应的二进制数ASCII数字 0~930H~39H39 H00111001BΛ0FH0000 1111 B09 H0000 1001B应用:MOV:利用DOS调用AH, 1INT21H从键盘输入字符到AL中ANDAL, 0000 1111B高4位为0,低4位不变
例 数字字符的ASCII → 对应的二进制数 ASCII 数字 0~9 30H~39H 应用: MOV AH, 1 ;利用DOS调用 INT 21H ;从键盘输入字符到AL中 AND AL, 0000 1111B ;高4位为0,低4位不变 、 0011 1001B 39 H ∧ 0000 1111 B 0F H 0000 1001B 09 H
逻辑运算常用于使操作数的某位为0或1,或测试某位为0还是1?使某位为1用该位与1相或,不变的位与0或使某位为0用该位与0相与,不变的位与1与。?使某位求反用该位与1异或,不变的位与0异或。●测试某位的值用TEST指令,据标志判断
逻辑运算常用于使操作数的某位为0或1, 或测试某位为0还是1。 ⚫使某位为1 用该位与1 相或,不变的位与0或。 ⚫使某位为0 用该位与0 相与,不变的位与1与。 ⚫使某位求反 用该位与1 异或,不变的位与0异或。 ⚫测试某位的值 用TEST指令,据标志判断
例21H端口管理中断系统,管理8个外设的中断0765214301010001D7D4D3D2D6D5D1DO为0,允许键盘中断为1,禁止允许键盘中断:INAL ,21H读入21端口内容ANDAL 1111 1101B置D1=0.其他位不变OUT21H AL送出屏蔽字到21H端口禁止键盘中断:INAL /21HOR;使D1为1AL.00000010BOUT21HAL
例 21H端口管理中断系统,管理8个外设的中断 为0, 允许键盘中断 为1, 禁止 7 6 5 4 3 2 1 0 1 0 1 0 0 0 1 0 D7 D6 D5 D4 D3 D2 D1 D0 允许键盘中断: IN AL,21H ;读入21端口内容 AND AL,1111 1101B ;置D1 = 0,其他位不变 OUT 21H ,AL ;送出屏蔽字到21H端口 禁止键盘中断: IN AL,21H OR AL,0000 0010B ;使D1为1 OUT 21H,AL
例379H端口的D7存放打印机的状态0764215310100100D7D3D2D0D6D5D4D1为0,表示打印机忙为1打印机空闲用查询方式控制打印机工作:MOVDX. 379HINAL, DX:从379H端口读状态ask::检测D7位TESTAL,1000 0000BJZask;为0,继续查询;输出字符打印print:
例 379H端口的D7存放打印机的状态 为0, 表示打印机忙 为1, 打印机空闲 7 6 5 4 3 2 1 0 1 0 1 0 0 0 1 0 D7 D6 D5 D4 D3 D2 D1 D0 用查询方式控制打印机工作: MOV DX, 379H ask: IN AL, DX ;从379H端口读状态 TEST AL, 1000 0000B ;检测D7位 JZ ask ;为0,继续查询 print: 、 ;输出字符打印
2.移位指令指令格式执行操作(cLSHLoprd,CFEI冈0(a.SAL oprd,CFEIF04taSHR oprd,0山CFCF(a.中+SAR (oprd
2 . 移位指令 SHL oprd, 1 CL SAL oprd, 1 CL SHR oprd, 1 CL SAR oprd, 1 CL CF 0 CF 0 0 CF CF 指令格式 执行操作