分类统计字符个数 一、实验目的 通过编程实现字符进行分类统计
利用 DOS 功能调用 INT 21H 的 10(0Ah)号功能,掌握进行键盘输入字符串的方法以及数据区设置
掌握 8086 指令: CMP、JB、JA、SHL、INC、LEA、INT、JNZ、SCASB、LOOPE/LOOPNE 等
二、实验内容 1、编写一个程序实现将数据段中存储在 STRING 处到 NUM 处的字符串进行分类统计,然后将结果存入以 letter、digit 和 other 为名的存储单元中
查找字符串 STRING 中是否有空格,如有找出第一个出现的位置(先用十六进制显示,后修改为十进制显示),否则输出 N
2、修改前述 1 的程序,实现从键盘输入一个以回车键作为结束符的字符串(字符个数不超过 80 个),存入 BUF 中,分类统计 BUF 中字符串,将结果存入以 letter、digit 和 other 为名的存储单元中,屏幕输出大小写字母个数、数字个数和其它字符个数,并查找字符串 BUF 中是否有空格,如有找出第一个出现的位置(用十进制显示),否则输出 N
(对有余力的同学) 实验结果: DEBUG 调试并查看结果的正确性
对存储区 STRING 的内容“12ABCDE#
@Y(78)=(1)
” 屏幕显示: N 对存储区 STRING 的内容“12ABCD E#
@Y(78)=(1)
” 屏幕显示: Place=7 对第 2 部分,如键盘输入 12ABCDE# 3456789143
@Y(78)=(1)
回车 输出结果: Letter=6 Digit=15 Other=9 Place=9 三、分析与体会 本次实验我花了较长的时间来完成
初略的程序花了 5 个多小时完成
后来遇到转换为十进制的时候就卡住了
后来在第六周周三的时候听了课以后才会做
第一个代码很长,有340