汇编程序:性别统计与字符转换

需积分: 1 0 下载量 161 浏览量 更新于2024-09-11 收藏 4KB TXT 举报
"该资源是汇编语言编程的实习代码,包含了两个主要部分:一部分用于统计输入的小写字母中'woman'和'man'的数量,另一部分实现将小写字母转换为大写字母的功能。" 在汇编实习代码中,可以看到两段程序,分别实现了不同的功能。首先,第一段代码用于将用户输入的小写字母转换为大写字母。这段代码使用了8086汇编语言编写,遵循了CS:CODE和DS:DATA的段假设。在DATASEGMENT和DATAENDS之间定义了一些数据段,如DISPLAY1和DISPLAY2,用于显示提示信息。 程序开始于START标签,通过MOVAX,DATA和MOVDS,AX设置数据段寄存器DS。接着,程序进入一个循环(NEXT1),调用INT 21H功能号9(显示字符串)和功能号1(读取字符)。然后,程序对输入的ASCII码进行比较,判断是否在小写字母范围内(03H到61H和7AH)。如果在范围内,字符被转化为大写(通过SUBDL,20H完成,因为大写字母比相应小写字母ASCII值小20H),并通过INT 21H功能号2(显示字符)输出。不在范围内的字符则显示错误提示。 第二段代码则是用于统计输入字符中'woman'和'man'的出现次数。数据段定义了DATA1、DATA2和DATA3、DATA4,分别用于存储'woman'和'man'的计数以及对应的字符串。程序同样从START标签开始,设置数据段,并进入一个循环(ZHU),读取用户输入的字符。如果字符在'1'到'z'范围内,程序会检查字符是否是'w'、'o'、'm'、'a'或'n',如果是则相应的计数器加一。当不再有输入时,程序会显示结果,包括'woman'和'man'的计数,以及它们转换为ASCII数值后的十进制表示。 整个实习代码通过INT 21H调用DOS服务,实现了字符输入、处理和输出的基本操作,同时也展示了条件分支、循环和计数等基本的程序设计概念。在实际操作中,用户可以通过运行这个程序来实践汇编语言对字符的处理和统计分析。