实验内容:键盘输入一字符,判断该字符是小写字母、大写字母、数字或其它字符。
若输入为小写字母,显示“You Input a Lowercase Letter!”;
若输入为大写字母,显示“You Input a Uppercase Letter!”;
若输入为数字,显示“You Input a Digit!”;
若输入为其它字符,显示“You Input Other Letter!”
实验名称:分支结构程序设计
主要使用软件:Masm for Windows
程序如下:
data segmentstring DB 'please input:',13,10,'$'strxx DB 13,10,'You Input a Lowercase Letter!$'strdx DB 13,10,'You Input a Uppercase Letter!$'strsz DB 13,10,'You Input a Digit!$'strqt DB 13,10,'You Input Other Letter!$'data endscode segmentassume CS:code,DS:datastart:mov AX,datamov DS,AXlea DX,string;输入一个字符mov AH,09int 21hmov AH,01int 21hcmp AL,'0';X<'0'即其他字符,转L0jb L0cmp AL,'9';X>='0',X<='9'即数字字符,转L1jbe L1cmp AL,'A';X>'9',X<'A'即其他字符,转L0jb L0cmp AL,'Z';X>='A',X<='Z'即大写字母,转L2jbe L2cmp AL,'a' ;X>'Z',X<'a'即其他字符,转L0jb L0cmp AL,'z' ;X>='a',X<='z'即小写字符,转L3jbe L3jmp L0 ;X>'z'即其他字符,转L0L0: mov AL,0;0->AL;当输入为其他字符jmp LLL1: mov AL,2;2->AL;当输入为数字字符jmp LLL2: mov AL,4;4->AL;当输入为大写字母jmp LLL3: mov AL,6;6->AL;当输入为小写字母LL: lea BX,TAB mov AH,0Add BX,AXjmp BX ;转到地址表中对应的指令去执行exit:mov AH,4chint 21h TAB: ;地址表jmp SHORT P0jmp SHORT P1jmp SHORT P2jmp SHORT P3P0: lea DX,strqt;其他字符mov AH,09int 21hjmp exit P1: lea DX,strsz;数字字符mov AH,09int 21hjmp exitP2: lea DX,strdx;大写字母mov AH,09int 21hjmp exitP3: lea DX,strxx;小写字母mov AH,09int 21hjmp exitcode endsend start
运行结果:
输入其他字符
输入数字字符
输入大写字母
输入小写字母