汇编语言实验四 分支与循环结构程序设计

1.已定义四位年份,判断是否是闰年,是则输出y,不是输出n。

.model small,c
.stack 200h
.data
res db ?
year dw 2000h
mod4 dw ?
mod100 dw ?
mod400 dw ?
;这些类型的余数必须是dw和year类型匹配
.code
.startup
mov dx,0
mov ax,year;对于字类型,div后面的是除数,被除数默认在DX:AX中,商在AX中,余数在DX中
mov cx,4
div cx;这里不能直接除以4,而是要用寄存器来运算
mov mod4,dxmov dx,0
mov ax,year
mov cx,100
div cx
mov mod100,dxmov dx,0
mov ax,year
mov cx,400
div cx
mov mod400,dx.if(mod4==0&&mod100!=0)||mod400==0
mov res,'Y';'Y'的十六进制是59
.else
mov res,'N' ;'N'的十六进制是4E
.endifmov al,res
;最终al的值是4E
.exit
end

2.已知数据段,在BUF定义了10个无符号字节数。试编写程序将数组中最大值找出来存放到MAX。

.model small,c
.stack 100h
.data
buf db 10H,34H,55H,98H,20H,35H,76H,15H,0AH,65H
max db ?
buflen equ lengthof buf
.code
.startup
mov bx,0
mov al,buf[bx];获取数组第一个元素
inc bx
.while bx<buflen
.if buf[bx]>al
mov al,buf[bx]
.endif
inc bx
.endw
mov max,al
;最终结果就是98h
.exit
end

3.已知数据段中定义了BUF和NUM,其中BUF定义了一个以'$'作结束标志的字符串。编写程序:统计该字符串中数字字符的个数,保存在NUM。

.model small,c
.stack 200h
.data
buf db  '12AcxyCDE45','$'
num db 0.code
.startup
mov bx,0
.while buf[bx]!='$'
.if buf[bx]>='0'&&buf[bx]<='9'
inc num
.endif
inc bx
.endw
mov al,num
;结果为4
.exit
end

4. 编程将数据段中存放的字节无符号整型数组从小到大排序。

.model small,c
.stack 200h
.data
buf db 10h,30h,88h,05h,66h,45h,9h,32h,80h,70h
buflen equ lengthof buf
.code
.startup
mov di,0
.while di<buflenmov si,1add si,di.while si<buflenmov bl,buf[si]mov cl,buf[di];这里不能使用ax和dx作为数组索引了,只能使用si和di这类索引寄存器.if cl>blmov buf[si],clmov buf[di],bl.endifinc si.endwinc di
.endw
mov si,buflen-1
mov di,0
mov al,buf[si]
mov bl,buf[di]
.exit
end

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

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

相关文章

消息队列-分布式消息队列技术选型

Kafka Kafka 是 LinkedIn 开源的一个分布式流式处理平台&#xff0c;已经成为 Apache 顶级项目&#xff0c;早期被用来用于处理海量的日志&#xff0c;后面才慢慢发展成了一款功能全面的高性能消息队列。 流式处理平台具有三个关键功能&#xff1a; 消息队列&#xff1a;发布和…

C#——文件读取IO操作File类详情

文件读取操作 IO类 就是对应文件的操作的类I/O类 包含各种不同的类 用于执行各种文件操作&#xff0c;创建文件删除文件读写文件 常用的类: File处理文件操作的类 FilleStream用于文件当中任何位置的读写 File类 1.文件创建 File.Create() 在指定路径下创建…

智慧校园综合解决方案:提供全方位的学校管理支持

在当今数字化时代&#xff0c;学校管理面临着越来越多的挑战&#xff0c;包括学生管理、教职员工管理、校园安全等。为了应对这些挑战&#xff0c;智慧校园综合解决方案应运而生。智慧校园综合解决方案融入了先进的信息技术&#xff0c;为学校带来了一场管理与教育模式的革新。…

12寸晶圆厂AGV和天车对网络建设的一些要点

12寸晶圆厂往往有AGV&#xff08;自动导引车&#xff09;和天车作为自动化设备&#xff0c;对网络有特定的参数指标要求&#xff0c;以确保它们的稳定运行和高效通信。以下是一些关键的网络参数指标要求&#xff1a; 1、 对于AGV的网络参数指标要求&#xff1a; 1. 通信协议支…

函数式组件:函数式组件是无状态的,它们不会被实例化,整个渲染过程被简化。我们可以讨论何时使用函数式组件以及如何使用

函数式组件的定义和特点 函数式组件是 Vue.js 提供的一种轻量级、简单、无状态的组件形式。它们被称为"函数式"的原因就在于它们只是一个纯函数,根据输入(属性)返回一个渲染的节点 Tree。 无状态 无状态是指函数式组件没有自己的状态,或者说没有自己的响应式…

给循环里的属性前三个加不同的样式

<template><view class"search-hot"><view class"search-hot-title" v-show"hotWord.length > 0">热词</view><view class"search-hot-list"><viewclass"search-hot-list-item"v-for&q…

打印mybatis的sql日志

1、application.xml: logging.level.com.xxx.xxx.daodebug2、log4j2.xml: <Logger name"com.xxx.xxx.dao" level"debug" additivity"true" />

SAP ABAP开发:如何读取物料主数据中的长文本?

在SAP ERP系统中&#xff0c;物料的基本描述可存储40个字符&#xff0c;见下图&#xff1a; 但长文本信息如何从系统中读取呢&#xff1f; 在SAP ABAP开发中&#xff0c;读取物料主数据&#xff08;Material Master Data&#xff09;中的基本视图&#xff08;Basic View&#…

DLS平台:惠誉全球经济展望——今年调增至2.6%,明年调减!

摘要 尽管全球货币政策逐渐转向宽松&#xff0c;惠誉国际评级&#xff08;Fitch Ratings&#xff09;在最新的《全球经济展望》中对2024年全球经济增长进行了上调。然而&#xff0c;由于美国经济增速放缓和其他因素的影响&#xff0c;2025年的全球经济增长预期则被下调。这篇文…

保姆级小白就业人工智能(视频+源码+笔记)

&#x1f345;我是小宋&#xff0c; Java学习AI&#xff0c;记录学习之旅。关注我&#xff0c;带你轻松过面试。提升简历亮点&#xff08;14个demo&#xff09; &#x1f345;我的java面试合集已有12W 浏览量。&#x1f30f;号&#xff1a;tutou123com。拉你进专属群。 ⭐⭐你的…

LVGL欢乐桌球游戏(LVGL+2D物理引擎学习案例)

LVGL欢乐桌球游戏&#xff08;LVGL2D物理引擎学习案例&#xff09; 视频效果&#xff1a; https://www.bilibili.com/video/BV1if421X7DL

最新Prompt预设词分享,DALL-E3文生图+文档分析

使用指南 直接复制使用 可以前往已经添加好Prompt预设的AI系统测试使用&#xff08;可自定义添加使用&#xff09; 支持GPTs SparkAi SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。支持GPT-4o…

微服务开发与实战Day11 - 微服务面试篇

一、分布式事务 1. CAP定理 1998年&#xff0c;加州大学的计算机科学及Eric Brewer提出&#xff0c;分布式系统有三个指标&#xff1a; Consistency&#xff08;一致性&#xff09;Availability&#xff08;可用性&#xff09;Partition tolerance&#xff08;分区容错性&am…

约瑟夫环递归算法详解与实现

一、引言 约瑟夫环问题是一个著名的理论问题&#xff0c;其背景是在古罗马时期&#xff0c;有n个犯人被围成一个圈&#xff0c;从第一个人开始报数&#xff0c;每次报到m的人将被处决&#xff0c;然后从下一个人开始重新报数&#xff0c;直到所有人都被处决。这个问题可以用递…

使用Minikube部署Kubernetes环境

使用Minikube部署Kubernetes环境 1. Minikube简介 Minikube是一个轻量级的Kubernetes实现&#xff0c;它在本地运行一个Kubernetes集群&#xff0c;可以是单节点或者集群环境&#xff0c;主要用于开发和测试。Minikube支持Kubernetes的所有主要功能&#xff0c;包括Dashboard…

经典文献阅读之--OrienterNet(自动驾驶中基于网格的交通场景感知)

dia 0. 简介 使用神经网络来匹配2D公开地图的做法是一个很有趣的方法&#xff0c;人们可以使用简单的2D地图在3D环境中指明自己所处的位置&#xff0c;而大部分视觉定位算法则依赖于昂贵的、难以构建和维护的3D点云地图。为了弥合这一差距《OrienterNet: Visual Localization…

cesium按照参数绘制不同形状的船舶

俺们公司之前有个自创的所谓前端GIS框架&#xff0c;是用Cesium搞的。我对该框架不熟悉&#xff0c;用它在地图上作画&#xff0c;画船舶符号&#xff0c;看以前的代码&#xff0c;感觉十分艰深晦涩&#xff0c;什么材质、纹理&#xff0c;令人头大如斗。我4年前用过一阵Cesium…

Vue3学习日记(day4)

响应式状态&#xff08;Vue3&#xff09; methods 对于DOM的更新详解 防抖函数 少量&#xff0c;单组件 多组件 计算属性 可写计算属性 我们继续来对后续的文档进行探究。 响应式状态&#xff08;Vue3&#xff09; 响应式状态在vue3进行了修改。 在选项式API中仍然为在…

ClickHouse 高性能的列式数据库管理系统

ClickHouse是一个高性能的列式数据库管理系统&#xff08;DBMS&#xff09;&#xff0c;主要用于在线分析处理查询&#xff08;OLAP&#xff09;。以下是对ClickHouse的详细介绍&#xff1a; 基本信息&#xff1a; 来源&#xff1a;由俄罗斯的Yandex公司于2016年开源。全称&…

Ubuntu18.04操作系统使用pip3安装open cv

在Ubuntu18.04操作系统环境下使用pip3安装opencv。安装方法如下&#xff1a; #pip3安装 sudo apt-get install python3-pip # 依赖包安装 sudo apt-get install libsm6 libxrender1 libxext6 #opencv安装;版本号自行填写 pip3 install opencv-python4.1.1.26 具体步骤 1、确认…