汇编语言:查找以‘$’结尾的字符串str中数字字符的个数并输出

news/2024/11/8 20:58:27/

 两个子函数,一个子函数统计字符串中字符的个数并放在CX中

另一个输出AX中的无符号整数 ,可以是0,但最大只能是4位数,并且前三位不能超过255

在主函数中先调用统计字符个数的子函数COUNT,然后把CX中的数复制到AX中,在调用显示AX中的数字

注意:在调用函数时系统默认把调用之前的地址放入栈中,在子函数中如果用到了PUSH,必须都POP完,否则函数返回时错误

汇编代码:

DATAS SEGMENT;此处输入数据段代码 a1 db '123456789abcdefghjk$' A2 DB 'SDFSADFASFSADFS$'
DATAS ENDSSTACKS SEGMENT;此处输入堆栈段代码
STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKS
START:MOV AX,DATASMOV DS,AX;此处输入代码段代码MOV SI,OFFSET A1CALL COUNTMOV AX,CXCALL DISPLAYMOV SI,OFFSET A2CALL COUNTMOV AX,CXCALL DISPLAYMOV AH,4CHINT 21HCOUNT PROC;统计字符串个数 SI入口参数,CX出口参数PUSH DXPUSH AXMOV CX,0
L0:    MOV DL,[SI]CMP DL,'$'JE OVERMOV AH,2INT 21H ADD SI,1INC CXJA L0OVER: 	POP AXPOP DXRET
COUNT ENDP    DISPLAY PROC;显示无符号十进制数 AX入口参数	PUSH AXPUSH BXPUSH DXMOV BH,0MOV BL,10
L0:DIV BLPUSH AXINC BHMOV AH,0CMP AL,0JNE L0L1:CMP BH,0JE OVERSUB BH,1POP DXMOV DL,DHADD DL,48MOV AH,2INT 21HJMP L1	;没有会错误,因为栈里放着返回函数的地址,栈里新放的数据需要POP完OVER:	POP DXPOP BXPOP AXRET
DISPLAY ENDPCODES ENDSEND START


http://www.ppmy.cn/news/1545458.html

相关文章

mybatis+postgresql,无感读写json字段

1.实体类中字段类型 import com.alibaba.fastjson.JSONObject;Data public class TestDto {private String name;//对应数据库的JSON字段private JSONObject page_detail;} 2.自定义实现typeHandler package base.utils;import com.alibaba.fastjson.JSONObject; import org…

生成式语言模型的文本生成评价指标(从传统的基于统计到现在的基于语义)

文本生成评价指标 以 BLEU 为代表的基于统计的文本评价指标基于 BERT 等预训练模型的文本评价指标 1.以 BLEU 为代表的基于统计的文本评价指标 1.BLEU(Bilingual Evaluation Understudy, 双语评估辅助工具) 所有评价指标的鼻祖,核心思想是比较 候选译文 和 参考…

使用QtWebEngine的Mac应用如何发布App Store

前言 因为QtWebEngine时第三方包,苹果并不直接支持进行App Store上签名和发布,所以构建和发布一个基于使用QtWebEngine的应用程序并不容易,这里我们对Qt 5.8稍微做一些修改,以便让我们的基于QtWeb引擎的应用程序并让签名能够得到苹果的许可。 QtWebEngine提供了C++和Qml的…

C++20 STL CookBook2 更强大的编译时 + 安全比较 + spaceship比较符

目录 使用编译时vector和字符串相关的上下文变量 安全的比较整数 <> :) 使用编译时vector和字符串相关的上下文变量 在大部分C语言程序中&#xff0c;我见过不少人是这样使用常量字符串的&#xff1a; #define STR "Hello, C" 然后可能传递进入一些函数做…

基于开源 AI 智能名片、S2B2C 商城小程序的用户获取成本优化分析

摘要&#xff1a;本文围绕用户获取成本&#xff08;CAC&#xff09;这一关键指标展开深入剖析&#xff0c;详细阐述其计算方式&#xff0c;并紧密结合开源 AI 智能名片与 S2B2C 商城小程序的独特性质&#xff0c;从多个维度探讨如何通过挖掘新的获客渠道、巧妙运用私域流量池等…

uniapp 下拉选择器picker

<picker mode"selector" :range"options" change"onPickerChange"> <div style"border: 1px solid #ccc;">选择品牌</div> </picker> let options reactive([选项1, 选项2, 选项3, 选项4]); const…

研究大语言模型在心理保健智能顾问的有效性和挑战

概述 心理保健是现代社会一个日益严重的问题。例如&#xff0c;在日本&#xff0c;自杀是 10-39 岁人群的首要死因。此外&#xff0c;根据世界卫生组织&#xff08;WHO&#xff09;的数据&#xff0c;自杀是全球年轻人的首要死因。在此背景下&#xff0c;通过短信应用程序提供…

大数据工具 flume 的安装配置与使用 (详细版)

参考网址&#xff1a;Flume 1.9用户手册中文版 — 可能是目前翻译最完整的版本了 1&#xff0c;上传安装包 安装包链接&#xff1a;文件下载-奶牛快传 Download &#xff5c;CowTransfer 口令&#xff1a;x8bhcg 1&#xff0c;切换盘符到安装目录 cd /opt/moudles 解压文件…