怎样建设一个好的企业网站,企业策划文案论文,竞价点击软件工具,检测网站的seo效果方法一#xff1a;
运行效果#xff1a; 输入B#xff0c;输出显示ABC#xff1b;输入A#xff0c;输出显示AB 思路#xff1a; 1、通过键盘输入接收一个字母。 2、将输入的字母减去1#xff0c;得到前导字符#xff0c;然后输出。 3、将输入的字母加上1#xff0c;得…方法一
运行效果 输入B输出显示ABC输入A输出显示AB 思路 1、通过键盘输入接收一个字母。 2、将输入的字母减去1得到前导字符然后输出。 3、将输入的字母加上1得到中间字符然后输出。 4、将输入的字母加上1得到后续字符然后输出。 通过MOV AH,07H调用中断接收输入字符之后输入的字符就存储在AL中只需要对AL进行操作就可以了。 Tips: MOV AH 01H 和 MOV AH 07H的区别 MOV AH 01H按下任何键将其对应字符的ASCII码送入AL中并在屏幕上显示该字符。 MOV AH 07H按下任何键将其对应字符的ASCII码送入AL中不在屏幕上显示该字符。 使用MOV AH 01H的效果 使用MOV AH 07H的效果本博客使用的是07H 两者均是从键盘接收字符并存入AL中只是显示的区别。 代码如下
DATAS SEGMENT ;数据段
DATAS ENDSSTACKS SEGMENT ;堆栈段
STACKS ENDSCODES SEGMENT ;代码段ASSUME CS:CODES,DS:DATAS,SS:STACKS ;设置段寄存器 代码段寄存器CS:CODES 数据段寄存器DS:DATAS 堆栈段寄存器SS:STACKSSTART: ;程序入口MOV AX,DATAS ;设置数据段MOV DS,AXMOV AH,07H ;输入无回显 是指在输入字符时字符不会在屏幕上显示出来INT 21H ;中断 AL输入字符SUB AL,1 ;将输入的字符减1得到其前导字符MOV DL,AL ;将前导字符存入DLMOV AH,02H ;输出前导字符INT 21H ;中断 DL输出字符ADD AL,1 ;将输入的字符加1得到中间字符MOV DL,AL ;将中间字符存入DLMOV AH,02H ;输出中间字符INT 21H ;中断 DL输出字符ADD AL,1 ;将输入的字符加1得到其后续字符MOV DL,AL ;将后续字符存入DLMOV AH,02H ;输出后续字符INT 21H ;中断 DL输出字符MOV AH,4CH ;结束程序INT 21H ;中断 0结束程序
CODES ENDS ;代码段结束END START ;程序结束 在上述代码中我们可以总结出输出一个字符的固定格式 MOV DL,要显示的字符现在所存入的寄存器例如本例中是AL MOV AH,02H INT 21H 方法二
从方法一中我们看出当输出的字母是A时打印出来的三个连续字符是“AB”这是因为A的ascll码前一位是“”如何实现当输出的字母是A时打印出来的三个连续字符是“ZAB”呢运行效果如下所示 思路 1、定义一组字符串让az首尾相接zabcdefghijklmnopqrstuvwxyza 2、接收用户从键盘输入的字母将输入字母与字符串的字母进行比较。 3、如果字符不相等则继续循环直到找到匹配的字符找到匹配字符后通过DEC指令将当前所在字符串的位置减1以便指向输入字符的前导字符输出再加1找到中间字符输出再加1找到后续字符输出。 代码如下
DATA SEGMENTSTRING DB zabcdefghijklmnopqrstuvwxyzaCRLF DB 0AH,0DH,$ ;回车换行符
DATA ENDSSTACK SEGMENT PARA STACKDW 128 DUP(?) ;定义栈段TOP LABEL WORD ;栈顶指针
STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATAMOV DS,AXMOV AX,STACK ;设置栈段MOV SS,AX ;设置栈顶指针LEA SP,TOP ;设置栈顶MOV AH,1 ;读入一个字符INT 21H LEA DI,STRING ;把STRING的地址放到DIL1: INC DI ;INC:1,指向字符串的第一个字符 ,‘z’CMP AL,[DI] ;比较当前字符和字符串的第一个字符JNE L1 ;如果不相等,则继续比较下一个字符DEC DI ;如果相等DEC:-1,指向前导字符MOV AH,9 ;显示字符串LEA DX,CRLF ;显示回车换行符INT 21HMOV CX,3 ;设置循环次数L2: MOV DL,[DI] ;把字符串的字符放到DLMOV AH,2 ;显示字符INT 21HINC DI ;指向下一个字符LOOP L2 ;循环CX次MOV AH,4CH ;退出程序INT 21H
CODE ENDSEND START