DJ13-2 汇编语言程序设计

news2025/2/2 4:32:08

目录

一、顺序程序设计

二、分支程序设计

1. 用比较/测试命令+条件转移指令实现分支

2. 采用跳转表实现多路分支

三、循环程序设计

1. 计数循环程序设计

2. 条件判断循环程序设计

四、子程序设计

1. 子程序设计举例

2. 主程序和子程序设计举例


 

一、顺序程序设计

举例:利用学号查询学生数学成绩表。

学号 1 → 偏移量 = 0

 

二、分支程序设计

1. 用比较/测试命令+条件转移指令实现分支

(1)单分支结构

举例计算字单元 DMem 中带符号数的绝对值,并将结果存储于数据段 RESULT 中。

完整的源程序必须定义堆栈段,否则将会出现编译警告。

 需要注意的是,条件满足时转移,否则执行下一条语句。

因此,需要合理选择分支条件,同时理解与高级语言的差别。

(2)双分支结构

举例:编写一个能够显示 BX 二进制最高位的程序段。

写法2:AND  BX,8000H

2. 采用跳转表实现多路分支

举例:设某程序有 10 路分支,试根据变量 N 的值(1~10),将程序转移到其中的一路分支去。

初始化部分:

程序部分:

 橙色部分:

 

 

三、循环程序设计

1. 计数循环程序设计

举例:计算 1~100 数字之和,并将结果存入字变量 SUM 的程序段。

LOOP:① CX - 1 ② 判断 CX 是否为 0

2. 条件判断循环程序设计

举例:数据段的 ARY 字节数组中存放有 10 个无符号数,试找出其中最大者送入 MAX 字节单元。

初始化部分:

程序部分:

 

四、子程序设计

  • 子程序是程序的一部分,是完成特定功能的程序段,它能够在程序中的任何地方被调用。

  • 子程序的调用与返回是由指令 CALL 和 RET 来完成的。

  • 子程序中一般都要使用寄存器,除了要返回参数的寄存器外,在子程序设计的开始部分,要将用到的寄存器进行压栈保护,在子程序结束返回调用程序之前要进行出栈恢复。

  • 子程序和调用程序直接的信息传送称为参数传递。

1. 子程序设计举例

举例:实现一个显示回车和换行功能的子程序。

先完成主要程序,再看需要用到哪些寄存器。

2. 主程序和子程序设计举例

举例:将两个给定的二进制数 BIN1 和 BIN2(8 位和 16 位)逐位转换为 ASCII 码字符串,并存储于 ASCBUF 中。

初始化部分:

主程序部分:

原理说明:

子程序部分:

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

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

相关文章

低代码为什么会受到企业青睐?是何原因?

低代码为什么会受到企业青睐?是何原因?回答这个问题,只需用4个“更”字,就能很好的概括。 1、更快(开箱即用) 2、更省(人力、时间成本) 3、更合适(需求贴合业务&#…

mfc常用控件

mfc在编写桌面客户端应用应用程序,在设计界面时,如果像一般的界面,实施人员或者适配人员使用(特定的用户群体)对界面要求没有那么高,只要软件功能正常,稳定就行,我们在做这些界面时,通常使用原生…

CSDN第16期竞赛

目录 1.比赛详情 2.竞赛感悟 3.竞赛题目回顾 (1)鬼画符门莲台争夺战 (2)津津的储蓄计划 (3)多边形的面积 (4)小桥流水人家 1.比赛详情 比赛地址:http://t.csdn.cn/b1Lzm 2.竞赛感悟 通过这次的周赛&#xff0c…

SQLserver技巧 年份判断,以及向上想下取整

SELECT [出厂日期],DATEDIFF(month,出厂日期,getdate())*1.0/12 as 使用年限/年 ---------得到的结果实际(浮点),cast(DATEDIFF(month,出厂日期,getdate())*1.0/12 as decimal(18,1)) as 使用年限/年 FROM tableA参考: https://blog.csdn.…

这篇文章来告诉你几个实用的视频转文字的方法

相信大家在闲暇之余,都会通过一些网课来提高自己的知识本领吧!有的时候在上网课的过程中,会感觉自己做笔记的速度赶不上老师的进度,重复观看又比较麻烦,这时我们就可以借助一些视频转换软件来将视频转换成文字&#xf…

元宇宙产业委共同主席倪健中:发挥元宇宙总部基地优势,探索农业元宇宙发展之路|2022首届海南自贸港(临高)乡村振兴发展论坛

12月12日,2022首届海南自贸港(临高)乡村振兴发展论坛暨经济合作洽谈周活动在临高开幕。此次活动以“精彩新临高抢滩自贸港”为主题,重点推介“红色”文旅、“黄色”农业、“蓝色”海洋、“绿色”金牌港和“紫色”数字经济组成的五…

【c++提高1】二叉树二叉堆(万字总结)

大纲 一、二叉树 二叉树:1.二叉树简介 二叉树:2.二叉树的性质 二叉树:3.二叉树的存储 二叉树:4.二叉树的遍历 二叉树:5.求解先序、后序、层次遍历序列 二叉树:6.例题 二、二叉堆 二叉堆:1.二叉堆…

Windows下NCNN环境配置(VS2019)

Windows下NCNN环境配置(VS2019) 本文修改自:Windows下ncnn环境配置(VS2019) 一、下载VS2019并安装 1、下载地址:https://visualstudio.microsoft.com/zh-hans/vs/ 2、下载后安装工作负载(安装以…

答疑解惑:开发者必须了解的Unicode和字符编码系统

目录 前言 ASCII Unicode UTF-8 C#中的字符串类型 UTF-16 String.Length 返回的是字符个数吗? 问题与答案 总结 参考 前言 请大家先思考几个问题 为什么有时候页面文本全是“锟斤拷”等乱码,有时候是个别字符别被替换为了�呢&a…

2.fs文件系统模块

fs模块是Node.js官方提供的用于操作文件的模块 目录 1 导入fs模块 2 读取文件内容 fs.readFile() 2.1 读取成功 2.2 读取失败 2.3 搞个函数判定读取成功还是失败 3 写入文件内容 fs.writeFile() 3.1 写入成功 3.2 写入失败 3.3 搞个函数判定写入成功还是失败…

如何构建企业内的 TiDB 自运维体系

1. 前言 得物 App 从创立之初,关系型数据库一直使用的开源数据库产品 MySQL。和绝大部分互联网公司一样,随着业务高速增长、数据量逐步增多,单实例、单库、单表出现性能瓶颈和存储瓶颈。从选型和架构设计角度来看这很符合发展规律&#xff0…

[思维模式-8]:《如何系统思考》-4- 认识篇 - 什么是系统思考?系统思考的特征?系统思考的思维转变。

目录 第1章 系统思考概述 1.1 什么是系统思考 1.2 系统思考适合解决什么样的问题?解决复杂问题的有效利器! 1.3 思维模式的转换:还原论向整体论(西医向中医) 第2章 系统思考的四项特征 2.1 看到全貌而非局部 2.…

ubuntu18.04+pycharm+pydesigner 配置教程(亲测可用)

文章目录系统环境pytorch 环境安装依赖包安装qtdesignerPyUICpycharm配置qtdesigner配置PyUIC配置成功如何使用参考文章:系统环境 ubuntu18.04 OS: Ubuntu 18.04.6 LTS Python version: 3.7 (64-bit runtime) Is CUDA available: True CUDA runtime version: 11.1…

物联网通信原理第4章 中远距离无线通信技术

目录 4.1 无线局域网(WLAN, Wireless LAN) 4.1.7 IEEE 802.11标准中的MAC子层(掌握) 1. IEEE 802.11 MAC帧格式 2. MAC层工作原理(本章重点) 4.4 无线局域网的扩频传输技术 4.4.1 直接序列扩频&#x…

使用inputmode改变移动端键盘弹出的类型

文章目录前言一、inputmode是什么?二、它有那些属性2.1 none2.2 text(默认值)2.3 numeric2.4 decimal2.5 tel2.6 search2.7 email2.8 url三、需要注意四、兼容前言 使用原因:需求是同时兼容移动端和PC端的输入,输入框数量多且绑定不同的对象…

深度学习Week11-调用官方权重进行检测(YOLOv5)

前言: 很早之前,我发过小白YOLOv5全流程-训练实现数字识别_牛大了2022的博客-CSDN博客_yolov5数字识别这篇文章,里面用简练语言分享用yolov5训练自己的识别器,但包括我在内许多人仍不了解其运行原理;过去两周&#xff…

Java并发——synchronized关键字

Java并发——synchronized关键字 1.synchronized作用的范围 synchronized有两种作用范围:对象锁和类锁 对象锁 使用方式: 在普通方法上加synchronized(默认锁对象为this)和同步代码块(自己指定锁对象) …

2022全年度净水器十大热门品牌销量榜单

随着人们健康意识的提升,每天喝足量水的观念已经深入人心,而伴随居民生活水平的提高,当下居民对水污染问题也更加关注,对饮水品质的认知和要求也随之升级。因此,净水器在过去几年开启了高速增长的趋势。 根据鲸参谋数据…

【AI with ML】第 14 章 :在 iOS 应用程序中使用 TensorFlow Lite

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…

使用文档管理系统结束内容混乱

使用文档管理系统结束内容混乱 在我们目前所处的混合工作新环境中,数据和文档量快速增长而导致的“内容混乱”是效率和有效协作的常见障碍。管理这个问题可能是现代企业面临的最大挑战。 根据分析公司IDC发布的预测,2020年至2024年间创建的数据量将超过…