微机原理实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件实验一
实验内容
在数据区定义字母数字串,分别统计数字、大写字母、小写字母个数,分别存放在SHUZI、DAXIE、XIAOXIE单元中。多次统计,记录统计结果。
实验要求
在熟悉wave 6000编程环境的基础上,完成上述源程序的输入、汇编、修改、运行等实验步骤,直到程序执行得到正确结果为止。熟练掌握单步运行、断点设置、自动运行、寄存器内容,数据区内容查看等程序调试技术。
DATA SEGMENT
BUF DB 'DADD\545s....'
COUNT EQU $-BUF
ORG 0020H
SHUZI DB 00H
DAXIE DB 00H
XIAOXIE DB 00H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
XOR AX,AX
MOV CL,COUNT
XOR CH,CH
LEA SI,BUF
CLD
GET:LODSB
CMP AL,30H
JB OTHER
CMP AL,39H
JA NEXT1
INC SHUZI
JMP OTHER
NEXT1:CMP AL,41H
JB OTHER
CMP AL,5AH
JA NEXT2
INC DAXIE
JMP OTHER
NEXT2:CMP AL,61H
JB OTHER
CMP AL,7AH
JA OTHER
INC XIAOXIE
OTHER:LOOP GET
MOV AH,4CH
INT 21H
CODE ENDS
END START
软件实验三
实验内容
将内存区定义的字母数字串的统计结果以16进制形式显示出来,显示格式为:The Nembers of Digital is:XXH
The Nembers of Capital Letters is:XXH
The Nembers of Small Letters is:XXH
程序要求:
1、二进制转十六进制并显示的功能由BTOHDSP实现
2、回车换行用CRLF宏指令实现
3、字符H的显示用OUTPUT宏指令实现
4、提示信息的显示用宏INOUT宏指令实现
实验要求:调试程序,直到正确实现所要求的功能。
XS MACRO OPR
LOCAL CZ1,CZ2
MOV BL,OPR
MOV CL,4
XOR CH,CH
SHR BL,CL
CMP BL,0AH
JB CZ1
ADD BL,07H
CZ1:ADD BL,30H
MOV DL,BL
MOV AH,2
INT 21H
MOV BL,OPR
AND BL,0FH
CMP BL,0AH
JB CZ2
ADD BL,07
CZ2:ADD BL,30H
MOV DL,BL
MOV AH,2
INT 21H
MOV DL,'H'
MOV AH,2
INT 21H
ENDM
CRLF MACRO
MOV DL,0DH
MOV AH,2
INT 21H
MOV DL,0AH
MOV AH,2
INT 21H
ENDM
DATA SEGMENT
BUFSIZE DB 10
ACTCHAR DB ?
CHARTEXT DB 10 DUP(20H)
DB '$'
ORG 0020H
SHUZI DB ?
DAXIE DB ?
XIAOXIE DB ?
TS DB 'Please Enter A String(<=10):','$'
TS1 DB 'The Number Of Digital Is:','$'
TS2 DB 'The Number Of Capital Letter Is:','$'
TS3 DB 'The Number Of Small Letter Is:','$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
XOR AX,AX
LEA SI,CHARTEXT
CLD
MOV DL,OFFSET TS
MOV AH,09H
INT 21H
MOV DX,OFFSET BUFSIZE
MOV AH,0AH
INT 21H
XOR CX,CX
MOV CL,ACTCHAR
NEXT:LODSB
CMP AL,30H
JB OTHER
CMP AL,39H
JA NEXT1
INC SHUZI
JMP OTHER
NEXT1:CMP AL,41H