org 100h
jmp start
table db 10h,20h,00h,80h,85h
db 30h,00h,9ah,00h,62h
plus db 0
negt db 0
zero db 0
start :
mov cx ,10
mov bx ,0
again :
cmp table [ bx ],0
jge gr
inc negt
jmp next
gr :
jg pi
inc zero
jmp next
pi :
inc plus
next :
inc bx
dec cx
: cmp bx ,10
Jnz again
jmp S
; here : jmp here
ret
![](https://profile-avatar.csdnimg.cn/default.jpg!4)
分支循环程序设计实验报告(相关搜索:程序设计)
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注
【以下回答由 GPT 生成】
该程序的作用是统计一个数组中各个元素的属性,比如正数的个数,负数的个数以及等于零的个数。
代码逻辑如下: 1. 首先设置基地址为100h。 2. 跳转到标签start处。 3. 定义一个数组table,其中存储了一些数据。 4. 定义3个变量plus、negt和zero,分别用来记录正数、负数和零的个数,初始值均为0。 5. 标签start处设置cx为10,bx为0,用于循环遍历数组。 6. 进入循环: - 使用cmp指令比较数组table中的元素是否为0。 - 如果大于或等于0,则跳转到标签gr。 - 如果大于0,则跳转到标签pi。 - 如果小于0,则直接跳转到标签next。 - 在标签gr处,增加negt的值,并跳转到标签next。 - 在标签pi处,增加plus的值,并跳转到标签next。 - 在标签next处,增加bx的值,减少cx的值,并使用cmp指令比较bx和10的值,如果不为0则跳回标签again。 7. 跳转到标签S。 8. 使用ret指令返回。
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决 无用评论 打赏 举报
悬赏问题
- ¥15 如何在envi中通过matlab提取树种纹理特征 并利用纹理特征和光谱指数进行树种分类
- ¥15 Python脚本打包成 .exe的问题
- ¥15 python将html转pdf
- ¥15 C# PrintDocument 80 热敏打印机 , 顶部空间如何缩小
- ¥15 Win10编码错误导致代码符号出现
- ¥15 tensorflow在特定账户下不可用
- ¥15 JavaScript 修改 chrome 上 传感器的经纬度
- ¥15 关于#java#的问题:怎么通过ffmpeg把第一个文件的后30秒、第二个文件全部、第三个文件前30合并到一起怎么通过ffmpeg把第一个文件的后30秒、第二个文件全部、第三个文件前30合并到一起
- ¥15 求推荐发表需要付费的深度学习遥感场景分类SCI期刊
- ¥15 VESTA绘图原子颜色显示异常