汇编语言(五)之数组中正数和负数分离

将数组中的正数和负数分离到两个数组

程序运行:

 

代码:


datas segmenta             dw -1,2,3,4,-2,-3,5,6,7,8,9,-10,13,15,-5,-24,-36,34,53,-90count          dw ($-a)/2p             dw 20 dup(?)n             dw 20 dup(?)pNumber       dw 0nNumber       dw 0outputpNumberPrompt  db 'the plus size:$'outputnNumberPrompt  db 0dh,0ah,'negtive  size:$'datas endsstacks segmentdw 100h dup(?)stacks endscodes segmentassume cs:codes,ds:datas,ss:stacks
main   proc  far
start:push dsmov ax,0hpush axmov ax,datas          ;初始化dsmov ds,axmov si,0mov di,0mov bx,0mov cx,counts:mov ax,a[bx]cmp ax,0jg plus                   ;ax为正数,则保存于p数组jl negtive                ;ax为负数,则保存于n数组jmp s2                    ;ax为0,则忽视plus:mov p[si],ax           ;保存ax于p数组inc pNumber             ;p数组长度加一add si,2                ;p数组单元下标加二jmp s2                  ;跳转到s2negtive:mov n[di],ax            ;保存ax于n数组inc nNumber             ;n数组长度加一add di,2                ;n数组单元下标加二s2:add bx,2		            ;a数组单元下标加二loop s;输出正数数组的长度提示lea dx,outputpNumberPromptmov ah,9int 21h;输出正数数组的长度mov ax,pNumbercall print;输出负数数组的长度提示lea dx,outputnNumberPromptmov ah,9int 21h;输出负数数组的长度mov ax,nNumbercall printretmain endpprint proc near;获取输出数的十进制字符保存在栈中mov bx,10mov cx,0sa: mov dx,0div bxpush dxinc cxcmp ax,0jne sa;输出数字字符mov ah,2ss1:pop dxadd dl,30hint 21hloop ss1ret
print endp
codes endsend main

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/323926.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dotnet使用Selenium执行自动化任务

如果要做百度文库,百度贴吧,百度知道签到,你,会怎么做?前不久我还会觉得这好像太麻烦了,now,soeasy。 自动化测试工具:Selenium Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行…

若依前后端部署之后验证码不显示

大家好,我是雄雄,欢迎关注微信公众号:👉雄雄的小课堂👈。 最近的几天都在搞publiccms的内容,从0到1实现,在花费了大量精力下,终于将一个门户站完完全全的实现了,且还可以…

jzoj3510-最短路径【dp】

正题 大意 有n个点,开始只能从前面的点走到后面的点,到达点n后返回,之后就只能从后面的点走到前面的点,从点1出发,要求每个点(除了点1)都必须且只能经过一遍,并回到点1的最短路径。…

mysql助记

modify primary key auto_increment date constraint unique foreign key references cascade distinct lower upper substring order by net start\stop mysql5 net start\stop mysql8 加主键(表级约束) alter table student add constraint pk_stu pr…

汇编语言(六)之输出字符的前导后字符

输入一个字符,输出该字符的前导后字符 程序运行: 代码: datas segmenta db ?inputPrompt db input a lowercase character:$outputPrompt db 0dh,0ah,output …

若依部署上线之后验证码不显示的解决方法之一

“大家好,我是雄雄,欢迎关注微信公众号:????雄雄的小课堂????。”最近的几天都在搞publiccms的内容,从0到1实现,在花费了大量精力下,终于将一个门户站完完全全的实现了,且还可以自定义扩…

在 ASP.NET Core 中执行租户服务

本博文翻译自:http://gunnarpeipman.com/2017/08/tenant-providers/ 在我之前关于 Entity Framework core 2.0 全局查询过滤器的文章中,我提出了一个想法,当构建模型时,如何自动地将查询过滤器应用到所有的领域实体中&#xff0c…

jzoj3512-游戏节目【树状数组,双向dfs】

正题 大意 有n个节目,每个节目对3个东西贡献不同,要求选择至少k个让第一个东西的值最大。求方案数 解题思路 至少k个我们可以计算选择任何个数的结果减去选择k个的结果。由于k比较小,我们考虑直接暴搜 数据不是很大,我们可以将…

【最全最详细】使用publiccms实现动态可维护的首页轮播

大家好,我是雄雄,欢迎关注微信公众号:👉雄雄的小课堂👈。 💁‍♂️前言 前几天,分享了一篇关于publiccms的教程,在这里:【最全最详细】publiccms使用教程,不…

汇编语言(七)之字符串转大写

输入一串字符,将字符串的小写字母转成大写字母 程序运行: 代码: datas segmentoriginalCaseMaxLength db 0ffh,0originalCase db 100h dup(?)uppercase db 100h dup(?)inputPrompt …

基于.NET CORE微服务框架 -谈谈surging API网关

1、前言 对于最近surging更新的API 网关大家也有所关注,也收到了不少反馈提出是否能介绍下Api网关,那么我们将在此篇文章中谈谈surging Api 网关 开源地址:https://github.com/dotnetcore/surging 2. API网关 简介 API 网关是服务提供者…

2018/7/18-纪中某C组题【jzoj3508,jzoj3509,jzoj3510,jzoj3512】

前言 这是比赛的一天后了,第4题调了我超久,其他的都还好。还有LZHdalao给我们讲的第二题超强。 今日分数 Rankperson分数3zyc1253xjq12510蒟蒻9515hjq7515hzb7515lrz7515xxy7525lw15 正题 T1:jzoj3508-好元素【hash,优雅的暴力】 博客链接…

汇编语言(八)之删除数组中为零的元素

删除数组中为零的元素 程序运行: 无输出 代码: datas segmentmem dw 10 dup(0h,34h,0h,56h,32h,10h,3h,13h,0h,0h)memCount dw ($-mem)/2datas endsstacks segment stackdb 100h dup(?)stacks endscodes segmentassume …

【最全最详细】使用publiccms实现动态可维护的导航菜单栏

“大家好,我是雄雄,欢迎关注微信公众号:????**雄雄的小课堂????。”????‍????前言昨天,给大家整理的是通过publiccms实现动态可维护的轮播图,有需要的小伙伴可以点击这里:publiccms实现动…

golang学习笔记

Panic异常 1、使用defer recover处理 2、或者程序启动时就让他出错 (初始化全局变量和 init)(军哥亲授) Json Age int json:"age,omitempty" 序列化时忽略0值或空值type People struct {Name string json:"…

【上海】关于云计算,你想学习哪些知识,快让我来满足你

超高人气、干货十足的 免费云计算课堂 Microsoft Cloud Day云思塾 2017下半年再出发! 即将开启上海之旅,微软诚邀您参加! Microsoft Cloud Day是个啥? 这是为时一天的结合用户培训与经验分享的云计算免费研讨会,通…

jzoj3461-小麦亩产一千八【斐波那契数列】

正题 大意 第零个格1个,第一格有p个,之后第i格就是第i-1格加i-2格。知道第a格有x个,求第b格有多少个。 解题思路 我们推一下 12345678ppp+1" role="presentation">p+1p+12p12p13p23p25p35p38p58p513p813p821p1321p13不难…

【最全最详细】publiccms实现将公共部分提取成单独模块引入

大家好,我是雄雄,欢迎关注微信公众号:👉雄雄的小课堂👈。 🧘‍♂️往期系列 这两天一直在整理Publiccms系列的教程,有需要的小伙伴们可以点击以下链接查看: ☝publiccms使用教程&a…

汇编语言(九)之十六进制数值转二进制

输入四位十六进制的数值,将十六进制数值转二进制输出 程序运行: 代码: datas segmentmaxLength db 5hexLength db 0hex db 5 dup(?)bin db 100h dup(?)inputPr…

goland

快捷键 command —ctrl option —alt 文件内搜索&#xff1a; command F ctrl F 前进回退&#xff1a; command option </> ctrl alt </> gofmt&#xff1a; command option L ctrl alt L