汇编实现字符串输入并倒序输出
汇编中的倒序输出
1、INT 21H的1号功能进行字符输入。
- 存放在数据段,倒序输出。
DATAS SEGMENTMAXL DB 30 ;定义字符串大小做计数RLEN DB ? ;保存实际长度STR1 DB 30H DUP(?);分配内存空间
DATAS ENDSSTACKS SEGMENTDW 60HDUP(?);分配堆栈空间TOP LABEL WORD;栈顶指针
STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKS
START:MOV AX,DATASMOV DS,AXMOV AX,STACKSMOV SS,AXLEA SP,TOPMOV CL,MAXLXOR CH,CH ;高八位清零LEA SI,STR1;初始化L1: MOV AH,1INT 21H ;输入CMP AL,0DH ;判断是否为回车输入结束JE FINMOV [SI],ALINC SILOOP L1
FIN:MOV CX,SISUB CX,OFFSET STR1;计数循环输出次数MOV RLEN,CL;实际输入个数保存
L2: DEC SIMOV DL,[SI]MOV AH,2INT 21HLOOP L2;逆序输出MOV AH,4CHINT 21H
CODES ENDSEND START
- 利用堆栈倒序输出。
DATAS SEGMENT;无数据段定义
DATAS ENDSSTACKS SEGMENTDW 60HDUP(?);分配堆栈空间TOP LABEL WORD;栈顶指针
STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKS
START:MOV AX,DATASMOV DS,AXMOV AX,STACKSMOV SS,AXLEA SP,TOPXOR CX,CX ;CX清零;初始化L1: MOV AH,1INT 21H ;输入CMP AL,0DH ;判断是否为回车输入结束JE L2PUSH AXINC CXJMP L1
L2: POP DXMOV AH,2INT 21HLOOP L2 ;输出MOV AH,4CHINT 21H
CODES ENDSEND START
2、INT 21H的0A号功能进行字符串输入。利用堆栈操作。
DATAS SEGMENTBUFF DB 50DB ?DB 50 DUP(?) ;缓冲区STR0 DB 0DH,0AH,24H
DATAS ENDSSTACKS SEGMENTDW 100H DUP(?)TOP LABEL WORD
STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKS
START:MOV AX,DATASMOV DS,AXMOV AX,STACKSMOV SS,AXLEA SP,TOP;初始化LEA DX,BUFFMOV AH,0AHINT 21H;输入LEA DX,STR0MOV AH,9INT 21H;回车换行MOV BX,OFFSET BUFFINC BXMOV CL,[BX];字符串实际个数存放到CL寄存器中MOV AL,CLXOR CH,CH
NEXT: INC BXPUSH [BX];压栈存储LOOP NEXTMOV CL,AL
DISP: POP DX;逐个弹出MOV AH,2INT 21HLOOP DISPMOV AH,4CHINT 21H
CODES ENDSEND START
关于逆序输出就可以尽量考虑堆栈。
个人笔记,请多指教。
汇编实现字符串输入并倒序输出相关推荐
- 将字符串或数字倒序输出
2019独角兽企业重金招聘Python工程师标准>>> 将字符串或数字倒序输出,以使这些呈散列分布,用于作为hbase rowkey的一部分,避免region的读写热点 public ...
- c语言写我爱你中国编程,.请用户输入一组字符串,”我爱你中国”,然后倒序输出该字符串;...
满意答案 张爱家学习日记 2013.05.03 采纳率:46% 等级:13 已帮助:14101人 Scanner input=new Scanner(System.in);//定义Scanner ...
- python3 输入一个数然后输出他的平方_汇编实验(输入一个数输出其平方值)
实验三 输出20以内数的平方值 题目:输入一个0到19的数字,输出这个数的平方值 要求:1.以十进制输出 2.平方值可以事先存放在表单中 3.输入范围越界要有错误提示 4.可以重复输入,直至输入空格为 ...
- java倒序输出数字的方法
1.在输入框中输入一个整数,比如要输入"5",需要输出倒序,可以使用数字键盘进行输入,也可以使用文本编辑器进行输入. 2.在命令行中输入"6",如图所示. 3. ...
- C语言 输入一个字符串,统计字符个数,并按照倒序输出该字符串。
题目:C语言 输入一个字符串,统计字符个数,并按照倒序输出该字符串. #include<stdio.h>void main() {char str[10];scanf("%s&q ...
- LeetCode输入字符串,倒序输出---C语言
输入字符串,倒序输出-C语言 #include<stdio.h> #include<string.h> #include <iostream> using name ...
- 从键盘输入一个已确定长度的字符串。然后将这个字符串倒序输出
字符:tnndwhynotdrinkit(催逝员警告) VS无法运行,会报错a[n]中必须为常量 ------------------------------------------ 代码: #i ...
- C++ 递归算法将输入的字符串倒序输出
C++ 递归算法将输入的字符串倒序输出 直接上代码. #include <iostream> #include<string> using namespace std; //使 ...
- ACMNO.27 Python的两行代码解决 C语言-字符逆序 写一函数。使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串。 输入 一行字符 输出 逆序后的字符串
题目描述 写一函数,使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串. 输入 一行字符 输出 逆序后的字符串 样例输入 123456abcdef 样例输出 fedcba654321 来源 ...
最新文章
- mysql之distinct
- 1.3 更多边缘检测内容-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
- Select控件可选可输入
- 【JVM调优工具篇】jvisualvm工具导出dump文件教程
- PHP可以重新定义已经存在的函数的类库patchwork
- (非原)如何让.net开发的Winform程序快速释放内存
- oracle备份恢复
- 一些关于Viewport与device-width的东西~(转)
- ECS 控制台诊断系统
- java笔试题_一道简单的 Java 笔试题,但值得很多人反思
- php对象数字属性,PHP获取对象的纯数字属性
- office2003 office2007同时安装 配置问题的解决
- 【转】switch中case与default的情况
- eclipse使用jsp
- Python3 抓取微信账单信息
- 《当程序员的那些狗日日子》(二十三)死在了今天的晚上
- vue中使用web serial api实现串口通信
- 常见服务器默认管理口地址
- 如何将flv格式的视频转换为mp4格式
- Android扫一扫 有仿微信版
热门文章
- 文件操作SaveFileDialog的用法
- swift学习笔记之navigationController的设置以及使用
- 走出 scipy 的深坑:用 numpy 实现散列数据网格化
- Redis6简单安装
- 能够可视化访问和查看H2数据库的工具
- Unable to locate package net-tools 处理方法
- 二维码解码程序的两大难点问题
- 计算机b类核心期刊有哪些,B类及以上期刊有哪些
- 【ACL Findings 2021】Does Robustness Improve Fairness? Approaching Fairness with Word Substitution R
- 模型可视化工具-netron网页版