设某个学生的英语成绩已存放在AL寄存器中,如果低于60分,那么打印F(FAIL);若高于或等于85分,则打印G(GOOD);当在60分和84分之间时,打印P(PASS)。

assume cs:code, ds:data

data segment
score db 90 ; 分数
give_a_mark  db 0, '$'   ; 评分
data  ends

code segment

start: mov ax, data   
mov ds, ax ; 初始化 ds,将data段的偏移地址赋值给 ds
mov dx, 0

mov al, ds:score[0]   ; 将AL指向 score 首地址

cmp AL, 60 ; 与60分比较
jb FAIL ; < 60,转FAIL
cmp AL, 85 ; ≥ 60,与85分比较
jae GOOD ; ≥ 85,转GOOD
mov AL, 'P' ; 其它,将AL ← 'P'
jmp PRINT ; 转打印程序

FAIL: mov AL, 'F' ; AL ← 'F'
jmp PRINT ; 转打印程序
GOOD: MOV AL, 'G' ; AL ← 'G'
PRINT:
MOV ds:give_a_mark[0], AL
lea dx, give_a_mark  ;使DX指向give_a_mark首地址
mov ah, 09H   ;给AH设置参数09H

int 21H
mov ax, 4C00H
int 21H

code ends
end start

当学生成绩为 90分时,程序输出‘G’。
汇编语言 判断学生成绩是否及格_初始化
当学生成绩为 60分时,程序输出‘F’。
汇编语言 判断学生成绩是否及格_赋值_02
当学生成绩为 70分时,程序输出‘P’。
汇编语言 判断学生成绩是否及格_赋值_03