📄 1.asm
字号:
;**************************输入任意字符,对其ASCII码进行偶校验,输出结果的16进制形式
data segment
count db 5
MESS1 DB' THE SEARCH FOR HARCH LABLE',0AH,0DH,'$'
MESS2 DB'****************************************************',0AH,0DH,'$'
MESS3 DB'* 0 1 2 3 4 5 *',0AH,0DH,'$'
MESS4 DB'* 6 7 1 9 4 5 *',0AH,0DH,'$'
MESS5 DB'* ZHANG WU YU CAI YE LIU *',0AH,0DH,'$'
MESS6 DB'****************************************************',0AH,0DH,'$'
MESS7 DB'* *',0AH,0DH,'$'
MESS8 DB'PLEASE INPUT THE STUDENT NUMBER:',0AH,0DH,'$'
MESS9 db 0ah,0dh,'SORRY THAT THE STUDENT NUMBER YOU SEARCH IS NOT IN THIS LABLE!$'
mess10 db'information is getted',0ah,0dh,'$'
BIAO DB '06 ZHANG $'
DB '17 WU $'
DB '21 YU $'
DB '39 CAI $'
DB '44 YE $'
DB '55 LIU $'
SHOW MACRO ADDRRS
LEA DX,ADDRRS
MOV AH,9
INT 21H
ENDM
data ends
;**************************
stack segment
dw 100 dup(?)
tos db ?
stack ends
;***********************
code segment
assume cs:code,ds:data,ss:stack
;---------------------------------
main proc far
start:
mov ax,stack
mov ss,ax
lea sp,tos
mov ax,data
mov ds,ax
MOV AX,0
MOV DX,0
MOV SI,0
MOV DI,0
SHOW MESS1
SHOW MESS2
SHOW MESS7
SHOW MESS3
SHOW MESS4
SHOW MESS5
SHOW MESS7
SHOW MESS6
SHOW MESS8
START1:
MOV AH ,01
INT 21H
mov BH, al
SUB AL ,30h
CBW
MOV BL, 6
DIV BL
ADD AH,30H
MOV SI,0
LOP1:
CMP AH,BIAO[SI]
JE lop2
ADD SI,11
LOOP LOP1
lop2:
add si ,1
cmp BH,biao[si]
je n1
add si,10
mov dl,2
mov ah,2
int 21h
; dec count
;jnz lop2
;jmp n2
cmp si,56
jg n2
jmp lop2
n2:
sHOW MESS9
JMP EXIT
n1:
SHOW mess10
LEA DX,BIAO[SI]
MOV AH,09
INT 21H
mov dl ,0dh
mov ah,2h
int 21h
JMP START1
EXIT:
mov ax,4c00h
int 21h
main endp
;------------------------------
code ends
;********************************
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -