本文主要是介绍汇编 | 屏幕显示数字,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
功能:PRINT子程序在屏幕上显示AL寄存器中的内容,0-9则在屏幕上显示0-9,大于9的在屏幕上显示英语字母。
DATA SEGMENTTABLE DB 1,2,8,9, 10,11,34,35, 36,37,40,41, 42,43,66,67 ;1-9 显示 1-9;10-35 显示A-Z;36-41 显示其他字符;42-67 显示a-z NUM EQU ($-TABLE)
DATA ENDSCODE SEGMENTASSUME: CS:CODE, DS:DATA
START:MOV AX,DATAMOV DS,AX MOV CX,NUM ;CX保存TABLE中数字个数,用于循环判断LEA SI,TABLE ;地址指针SI指向TABLE储存区首地址L: MOV AL,[SI]CALL PRINTINC SI LOOP L MOV AH, 4CHINT 21H ;显示子程序
PRINT PROC NEAR PUSH DX MOV DL,AL CMP DL,9 ;判断是否 <=9JLE ADD1 ; 是 ---> ASCII码加30H JNLE ADD2 ;不是 ---> ASCII码加37H ADD1: ADD DL,30HJMP PRI ADD2: ADD DL,37H PRI: ;显示MOV AH,02H INT 21H ;加回车符MOV DX,0DH INT 21H ;加换行符MOV DL,0AH INT 21H POP DX RET
PRINT ENDPCODE ENDSEND START
结果:
对应关系:1-9 显示 1-9
10-35 显示A-Z
36-41 显示其他字符
42-67 显示a-z
这篇关于汇编 | 屏幕显示数字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!