键盘输入数字、大写字母、小写字母的混合串(以回车结束,100个以内),
将其中的小写字母转换为大写字母后显示到CRT上

data segmentmess     db "please input", 0dh,0ah,'$'buf     db 101 db     ?db     101 dup (0)
data endscode segmentassume cs:code,ds:data,es:data
start:mov ax, datamov ds, axmov dx, offset messmov ah, 9int 21hmov dx, offset bufmov ah, 10int 21hmov dl,0ahmov ah,2int 21hmov dl,0dhmov ah,2int 21hmov bx, offset buf+2mov cl, buf+1s:cmp cl, 0jz printdec clmov al, [bx]cmp al, 30hjb okcmp al, 3Ahjb numcmp al, 41hjb okcmp al, 5Bhjb capcmp al, 61hjb okcmp al, 7Bhjb low_ok:inc bxjmp snum:jmp okcap:jmp oklow_:sub byte ptr [bx], 20hjmp okprint:mov byte ptr [bx], '$'mov dx, offset buf+2mov ah, 9int 21hmov ah, 4chint 21hcode ends
end start

扩展:并统计其中其中数字、大写字母、小写字母的的个数,显示出来

data segmentmess db "pelease input a string: ", 0dh, 0ah, '$'Num db 0dh, 0ah,"THE NNMBER OF NUM IS :$"Cap  db 0dh, 0ah,"THE NNMBER OF CAP IS :$"Lower    db 0dh, 0ah,"THE NNMBER OF LOWER IS :$"x1 db 0 ;统计数字个数x2  db 0 ;统计大写祖母个数x3    db 0 ;统计小写字母个数buf   db 100db ?db 100 dup(0)data ends
code segmentassume cs:code, ds:data, es:data
start:mov ax, datamov ds, axmov dx, offset messmov ah, 9int 21hmov dx, offset bufmov ah, 10int 21hmov dl,0ahmov ah,2int 21hmov dl,0dhmov ah,2int 21hmov bx, offset buf+2mov cl,buf+1lop:mov al, [bx]cmp al, 61h jb next1;如果不是小写字母跳转到next1cmp al, 7ahja next1sub al, 20h ;小写字母Ascii码减20得到大写字母mov dl, almov ah,2 ;调用2功能输出int 21hinc x3 ;小写字母个数加1jmp l
next1:cmp al, 41h ;41h-Ajb next2 ;al < 41h;如果不是大写字母就跳转到next2cmp al, 5ah ;5ah-Zja next2 ;al > 5ahinc x2 ;大写字母个数加1jmp l
next2:inc x1 ;数字个数加1
l:inc bxdec cljnz lop;不等于0继续mov dx, offset Nummov ah, 9int 21h;输出统计个数mov al,x1call B_TO_D16 ;调用子程序输出数字串mov dx, offset Capmov ah, 9int 21hmov al,x2call B_TO_D16 ;调用子程序输出大写字母串mov dx, offset Lowermov ah, 9int 21hmov al,x3call B_TO_D16jmp exit;16位二进制转十进制子程序
B_TO_D16 PROC NEAR;AL中要转换的二进制数AND AH,0 ;ah存放余数,初始化为0MOV BL,100DIV BL ;ax/100得到百位数,存放al中MOV CL,AH ;余数暂存于cl中ADD AL,30H ;输出百位数MOV DL,ALMOV AH,02HINT 21HMOV AL,CL MOV BL,10AND AH,0DIV BL ;ax/10得到十位数ADD AL,30H ;输出十位数MOV DL,ALMOV CL,AHMOV AH,02HINT 21HMOV AL,CL ;输出个位数ADD AL,30HMOV DL,ALMOV AH,02HINT 21HRET
B_TO_D16 ENDPexit:mov ah, 4chint 21h
code endsend start

小写转大写输出,并统计数字、大写字母、小写字母的个数相关推荐

  1. 编写一个程序实现输入一个英文字母,如果是小写字母将其转换成大写输出,如果是大写字母则直接输出。

    #include<stdio.h> int main() {char b;scanf("%c",&b);if(b>='A'&&b<= ...

  2. C 统计数字和大写字母和小写字母的个数

    image.png 从键盘输入一行字符,分别统计其中大写字母和小写字母的个数 实例 #include <stdio.h>int main(void) {char str;int digit ...

  3. java将大写数字转换成小写并输出

    import java.util.Scanner; public class Low { //lowNumber方法将大写数字转换成小写并输出 private static void lowNumbe ...

  4. if-else 判断输出的字符是大写字母、小写字母、数字或者其他类型

    if-else判断输出的字符是大写字母.小写字母.数字.或者其他类型 #include<stdio.h> void main(){char c;printf("input a c ...

  5. 输入一个字符,判断它如果是小写字母输出其对应的大写字母,如果是大写字符输出其对应的小写字母 ,如果是数字则直接输出数字,不是上述情况输出other。

    字符输入 描述 输入一个字符,判断它如果是小写字母输出其对应的大写字母,如果是大写字符输出其对应的小写字母 ,如果是数字则直接输出数字,不是上述情况输出other. 输入 输入只有一组数据,共4行,每 ...

  6. (小甲鱼字符串I编程)1.一个英文字符串,去掉相邻的大写小写如Aa,输出这个字符串 2.字符串按如下存放:它的偶数下标为小写英文字母奇数下标为正整数编写代码将奇数下标的数字转换为上一个字母偏移后的字母

    一.请按照以下规则整理一个给定的字符串 s. 一个整理好的字符串中,两个相邻字符 s[j] 和 s[j+1],其中 0 <= j <= s.length - 2,要满足如下条件: · 若 ...

  7. php统计大写字母个数,C++_C++统计中英文大小写字母、数字、空格及其他字符个数的方法,本文实例讲述了C++统计中英文 - phpStudy...

    C++统计中英文大小写字母.数字.空格及其他字符个数的方法 本文实例讲述了C++统计中英文大小写字母.数字.空格及其他字符个数的方法.分享给大家供大家参考,具体如下: /* * 作 者: 刘同宾 * ...

  8. 输入一行字符(以回车键结束),统计其中大写字母的个数、小写字母的个数、数字字符的个数、空格个数及其他字符的个数(c语言)

    样例输入: 3qwe QAZS+ 样例输出: 小写字母个数为:3 大写字母个数为:4 数字的个数为:1 空格的个数为:1 其他的个数为:1 代码段: #include <stdio.h> ...

  9. Java黑皮书课后题第4章:*4.15(电话键盘)电话上的国际标准字母/数字映射如下所示。编写程序,提示用户输入一个小写或大写字母,然后显示对应数字。对于非字母输入,提示非法输入

    *4.15(电话键盘)电话上的国际标准字母/数字映射如下所示.编写程序,提示用户输入一个小写或大写字母,然后显示对应数字.对于非字母输入,提示非法输入 题目 题目概述 运行示例 破题 代码 题目 题目 ...

最新文章

  1. 机器学习笔记:向量自回归模型VAR
  2. k8s pod之间不能通信_Kubernetes 同 Pod 内的容器使用共享卷通信
  3. spring mvc学习(10):eclipse的环境前maven配置
  4. Post与Get传值读取方法
  5. python类:类方法和静态方法
  6. 专利号校验码php,电子专利证书的三种下载操作方法
  7. stm32学习笔记:点阵模块74HC595、APM4953
  8. 用拉普拉斯变换求零状态响应_【解析几何】椭圆的仿射变换(伸缩变换)
  9. 二进制与base64
  10. LTspice蒙特卡罗分析正态分布图工具
  11. 8脚 tja1050t_高速光耦:CAN总线通信硬件原理图(采用TJA1050T CAN总线驱
  12. 性能衡量指标-吞吐量与响应时间
  13. Android 实时录音和回放,边录音边播放 (KTV回音效果)
  14. node 对接微信支付的踩坑记录(服务端)
  15. R数据分析:生存分析的列线图的理解与绘制详细教程
  16. copy和deepcopy
  17. 创客学院知识巩固-07驱动初级小结
  18. CentOS 7 Nginx 控制脚本
  19. 【Unity3D】半球卷屏特效
  20. Mysql查询至少有一门课与学号为“s001”的同学所学相同的同学的学号和姓名

热门文章

  1. 流量卡之家:三大运营商停售达量限速套餐?联通移动称未接到通知
  2. 豆瓣评分小程序Part-3
  3. 谷歌浏览器设置默认搜索引擎
  4. 最好的Google表格插件
  5. 画圆形头像的简单画法
  6. 用c语言实现简单的项目信息管理系统(单向链表实现)
  7. 八年级上学期计算机教学计划,第一学期七八年级信息技术教学计划
  8. java map不区分KEY的大小写
  9. 如何把word中的多级编号中的题注“图一.1”自动变成“图1.1”
  10. 一千万的股票能一天卖出吗