求汇编程序:编程实现将键盘输入的小写字母转换为大写字母显示出来?

作者&投稿:毋栏 (若有异议请与网页底部的电邮联系)
编写一个汇编程序,要求将用键盘输入的小写字母转换成大写字母并显示出来~

1、打开软件Visual C++6.0,新建一个C源程序,书写C语言程序。

2、首先定义两个字符型变量,代码:char c1,c2;从键盘中输入一个大写字母,代码:c1=getchar();。

3、大写字母与小写字母的ASCII值相差32。代码:c2=c1+32;。将大写字母转化成小写字母。

4、输出小写字母。使用putchar()函数,可以输出一个字符型变量。代码:putchar(c2)。

5、连接编译程序。点击工具栏按钮【Compile(Ctrl+F7)】,编译程序;点击工具栏上的像感叹号的按钮【BuildExecute(Ctrl+F5)】,组建程序。

6、在程序运行窗口中,输入一个大写字母A,按回车键,即可输出一个小写字母。

data segment
str1 db 0dh,0ah,'input error! $'
str2 db 0dh,0ah,'input your char:$'
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
lea dx,str2 ;显示输入信息
mov ah,9
int 21h
mov ah,01h ;调用21中断01功能。。输入字符
int 21h
cmp al,61h
jb exit
cmp al,7ah
ja exit
sub al,32
mov dl,al;显示转换后字母
mov ah,02h
int 21h
mov ah,4ch;返回dos
int 21h

exit:

lea dx,str1 ;显示错误信息
mov ah,9
int 21h
mov ah,4ch;返回dos
int 21h
code ends
end start

1、打开软件Visual C++6.0,新建一个C源程序,书写C语言程序。

2、首先定义两个字符型变量,代码:char c1,c2;从键盘中输入一个大写字母,代码:c1=getchar();。

3、大写字母与小写字母的ASCII值相差32。代码:c2=c1+32;。将大写字母转化成小写字母。

4、输出小写字母。使用putchar()函数,可以输出一个字符型变量。代码:putchar(c2)。

5、连接编译程序。点击工具栏按钮【Compile(Ctrl+F7)】,编译程序;点击工具栏上的像感叹号的按钮【BuildExecute(Ctrl+F5)】,组建程序。

6、在程序运行窗口中,输入一个大写字母A,按回车键,即可输出一个小写字母。



CODE SEGMENT
ASSUME CS:CODE
START:MOV AL,01H ;采用DOS调用的01号功能
从键盘输入字符
INT 21H
CMP AL,‘a’ ;与字符‘a’进行比较
JB EXIT ;小于‘a’,转向结束
CMP AL,‘z’ ;与字符‘z’进行比较
JA EXIT ;大于‘z’,转向结束
SUB AL,20H ;大小写字母间相差20H
MOV DL,AL ;转换后,结果送DL
MOV AH,02H ;DOS调用02号功能,显示结果
INT 21H
EXIT: MOV AH,4CH ;返回DOS
INT 21H
CODE END ;代码段结束
END START ;汇编结束

虽然我不知道编程怎么编的,但是可以提供你一个原理
不知道你发现没有,当你按住shift的时候输入小写字母都会变成大写的,所以只要实现程序运行的时候shift是按住的就可以了!

呵呵,楼上的方法,谈不上什么原理。
题目的要求,是编写个程序,可把其它任何人的输入,都自动的,由小写变成大写。
你能让老师自己按住shift来控制其它人吗?真能搞笑!

先获取小写字母,然后将其asc码减32就是大写字母,再输出就可以了!


汇编语言编程 编程序,实现y=10*x 谢谢
采纳率:45% 来自:芝麻团 擅长: 硬件 操作系统\/系统故障 汇编语言 C\/C++ 软件开发 其他回答 什么意思,完全不明白,实现y=10*x也太抽象了吧,其他要求没有了?乘法直接不是用乘法的指令就能完成了么 追问 额,我是完全不懂的 ,再简单你也写下,谢谢了 追答 用MUL指令就是乘法,具体我也记不清了,我学过的...

求用汇编语言编写一个实现任意两个五位数相加的程序
mov cx,5;改变此值,可实现超大数相加 T3: call subs_c;逐位累加 dec si dec di loop T3 cmp dl,1;校正最高位 jnz T4 or dl,30h mov [di],dl;有进位,置1 jmp T5 T4: mov byte ptr [di],20h;去掉前导0 T5: ret subs_c: ;[原创]多位加法核心子程序 mov al,[si];...

单片机msc-51中编程实现两个一字节压缩型BCD码的减法
编程实现两个一字节压缩型BCD码的减法,设被减数地址在R0中,减数地址在R1中,差仍存于被减数地址单元中。注意是单片机中啊。--- 一字节压缩的 BCD 码相减。如:22-55 =-33。注意:-33 的 BCD 补码是 67H。MCS-51 汇编语言程序如下:MOV R2,#22H;被减数 MOV R3,#55H;减数 CLR ...

用汇编语言编写一个51单片机程序,实现电子秒表功能
;=== ;功能:本程序实现P0口的对数码管动态显示秒表的分、秒、1\/100秒;; 计时程序由中断服务程序实现,采用定时计数器T0工作方式1;; P2口实现对数码管的片选功能 ;=== ;===初始化===

汇编语言程序编程
我知道:1)从0200H单元开始有100个数,编一个程序检查这些数,正数保持不变,负数取补后送回,要求程序框图和完整程序及每条指令的解释。(直接从0398HI单取消,然后进入POUJN脚本,改485这个值就可以了)2)已知数组A和数组B分别包含50和20个互不相等的带符号数(16位)编程将在A中但不在B中...

汇编语言编程实现下面问题:
END START程序的结果,要用DEBUG来观看。 做而论道 | 发布于2012-11-06 举报| 评论 4 0 为您推荐: 汇编语言指令大全 编程软件 汇编语言是 关于汇编语言程序 汇编语言编程方法 只会汇编语言 汇编语言基础编程 汇编语言 编程练习 汇编语言是一种 汇编语言可以实现 其他...

Win32汇编语言程序设计教程内容简介
更进一步,书中提供了丰富的实例,比如使用Win32汇编程序实现的基于WinSock的TCP\/IP协议网络编程,以及VxD虚拟设备驱动程序设计。此外,还有COM组件应用的范例,这些都是实际工作中可参考的重要部分,有助于读者将理论知识转化为实用技能。总的来说,《Win32汇编语言程序设计教程》旨在为学习者提供一套从基础...

汇编语言程序设计步骤 有那几步
汇编语言程序设计步骤: 1、 分析问题,抽象出描述问题的数据模型 2、 确定问题的算法思想 3、 画出流程图或结构图 4、 分配存储器和工作单元(寄存器) 5、 逐条编写程序 6、 静态检查,上机调试 例:编程查找考生的最高分,假设所有考生分数已存入计算机内存。 1、 分析问题 根据条件、特点、规律 ...

用汇编语言如何编写计算n!的程序(利用循环结构程序编写)
;X86汇编_用循环结构编程计算阶乘n!code segment assume cs:code,ds:code org 100h start:push cs pop ds push cs pop es Q0:lea dx,Tips mov ah,9 ;显示提示 int 21h Q1:mov ah,0 int 16h cmp al,1bh ;Esc退出 jz exit cmp al,'0'jb Q1 ;不是数字重新输入 cmp al,'8';大于8...

编程实现2字节乘法,(汇编)
(5) 标号: MULD功能:双字节二进制无符号数乘法888888888888888888888888888888888888888888888888888888888888888888888888 入口条件:被乘数在R2、R3中,乘数在R6、R7中。出口信息:乘积在R2、R3、R4、R5中。影响资源:PSW、A、B、R2~R7 堆栈需求: 2字节 MULD: MOV A,R3 ;计算R3乘R7 MOV B,R7 MUL AB...

源城区18315592459: 试编写一个汇编语言程序 要求对键盘输入的小写字母 -
主宰通经: ;;从键盘输入字符, ;;若是小写字母显示"This is Lower case letters." ;;若是其它字符不显示 CSEG SEGMENTASSUME CS:CSEG,DS:CSEG MSG DB " This is Lower case letters. $"ORG 200H START: MOV AH, 01HINT 21H...

源城区18315592459: 编写一个汇编程序,要求对键盘输入的大写字母用小 -
主宰通经: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22cseg segment assume cs:cseg start: $0:mov ah,1int21h ;//读取一个字符(al) cmp al,'z'ja $exitcmp al,'a'jb $exit sub al,20Hmov ah,2int21h ; 用小写输出jmp $0 ; 再读下一个字符 $exit: ;如果输入的不是大写字母,则退出.mov ah,4chint21h cseg ends end start

源城区18315592459: 编程实现将键盘输入的小写字母用大写字母显示出来(小写字母比对应大写字母的ASCII码值大20H).用汇编 -
主宰通经: 互相指教BEGIN:MOV AH,1INT 21HCMP AL,'a'JB STOPCMP AL,'z'JA STOPSUB AL,20HMOV DL,ALMOV AH,2INT 21HJMP BEGINSTOP:RET

源城区18315592459: 使用8086汇编语言编写程序实现:将从键盘输入的小写字母转换成大写字母输出.求程序流程图? -
主宰通经: data segment chars db 200 dup(?) ;开辟200字节的缓冲区 data ends ;--------------------------------- code segment assume cs:code,ds:datastart : push ds mov ax,0 push ax mov ax,data mov ds,ax lea bx ,chars mov si,0 mov ch,0 ;----------------------...

源城区18315592459: 编写一个汇编程序,要求对键盘输入的大写字母用小写字母显示出来… -
主宰通经: assume ds:datasg, cs:code datasg segment db "Beginner's All-purpose Symbolic Instruction Code.",0 datasg ends code segment begin: mov ax, datasg mov ds, ax mov si, 0 call letterc mov ax, 4c00h int 21h letterc: mov cl, byte ptr ds:[si] jcxz ...

源城区18315592459: 试用C语言编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来 -
主宰通经: model small.stack.data message db 'please enter the small letter:',0ah,0dh,'$' message2 db 'the capital letter is:',0ah,0dh,'$' error db 'enter must be small!please enter again:',0ah,0dh,'$' message3 db 'the capital letter is:','$' letter db ?.code start:mov ...

源城区18315592459: 用汇编语言编程实现从键盘输入一个字符带回显,并将键盘输入的那个字符在屏幕上换行显示出来 -
主宰通经: .MODEL SMALL .DATA .CODE START:MOV AX, @DATAMOV DS, AX MOV AH, 1INT 21H MOV BL, AL MOV DL, 13 ;回车MOV AH, 2INT 21HMOV DL, 10 ;换行INT 21H MOV DL, BL ;显示INT 21HMOV AH, 4CHINT 21HEND START

源城区18315592459: 编程实现将键盘连续输入的小写字母用大写字母显示出来,小写字母与大写字母之间采用 “ - ”号分隔 -
主宰通经: 1、获取输入字符.2、转成ASCII码3、判断是否为小写字母区间4、是->前面加 "-"5、否 退出

源城区18315592459: 编一个汇编语言程序,要求对键盘输入的小写字母用大写显示 -
主宰通经: CSEG SEGMENT ASSUME CS:CSEG START: MOV AH,01H INT 21H MOV DL,AL SUB DL,20H MOV AH,02H INT 21H MOV AH,4CH INT 21H CSEG ENDS END START 用masm 弄一下就OK了~~

源城区18315592459: 编一个汇编语言程序,要求对键盘输入的小写字母用大写显示 -
主宰通经: CSEG SEGMENT ASSUME CS:CSEGSTART: MOV AH,01H...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网