0

有人可以在汇编中定义我and关键字的确切用途吗?我在这里提供了一个代码,有人可以解释一下and这段代码的作用吗?顺便说一句,and它位于下面的某个地方,begin只是为了让您轻松找到它。

code segment
assume cs:code;ds:code
org 100h

begin:

mov ah, 09
mov dx, offset msg1
int 21h

mov ah,01h ;ask user
int 21h
and al,01h
jz EVENn
mov ah, 09 ;display string
mov dx, offset oddmsg
int 21h
jmp ENDd

EVENn:

mov ah, 09 ;display string
mov dx, offset evenmsg
int 21h

ENDd:
int 20h

msg1:db 'enter a number: $'
evenmsg:db 0ah,0dh, 'EVEN $'
oddmsg:db 0ah,0dh, 'ODD$'

code ends
end begin
4

1 回答 1

1

运算符执行and逻辑与运算。

在这种情况下,它用于屏蔽值中的单个位。例如,如果您6Dhal(从 STDIN 读取的字符m)中获取值,则该操作仅留下最低有效位:

6Dh  01101101
01h  00000001
--------------- and
     00000001

偶数字符代码给出结果00h,奇数字符代码给出结果01h

于 2013-02-14T13:47:54.743 回答