汇编实验十编写子程序

第一题,显示字符串,8行3列显示Welcome to masm!

assume cs:code
data segment
db ‘Welcome to masm!’,0
data ends
code segment
start:
mov dh,8;行号
mov dl,3;列号
mov cl,2;颜色
mov ax,data
mov ds,ax
mov si,0 ; ds:si 指向字符串首地址
call show_str

mov ax,4c00h
int 21h
show_str:
add dl,dl;因为一字符占两字节,列*2
mov al,160
mul dh ;ax中存行字节数
mov dh,0 ;为使列字节数加到行上高位清零
add ax,dx;其实也可以写成add al,dl就不用了清零

mov bx,ax;bx指向目的地址
mov ax,0b800h
mov es,ax
mov ch,0 ;若把颜色加到ch,jcxz就无法正常执行
mov al,cl;通过al,附加颜色
change:
mov cl,ds:[si]
mov byte ptr es:[bx],cl;第一个字符转移
jcxz ok;判断

inc bx
mov es:[bx],al;将颜色加到第二个字节
inc si
inc bx
jmp short change;跳转回change
ok: ret;跳转回mov ax,4c00h

;总结,本题考查了有条件跳转的应用,显示缓存区,编写子程序,

code ends
end start

效果如下::

汇编实验十编写子程序

Original: https://www.cnblogs.com/alexanders/p/12947809.html
Author: AlexanderOscar
Title: 汇编实验十编写子程序

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/599451/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • JavaWeb 05_JDBC入门及连接MySQL

    一、概念 *概念: Java DataBase Connectivity Java数据库连接, Java语言操作数据库* JDBC本质:其实是官方(sun公司)定义的一套操作所有关…

    数据库 2023年5月24日
    0101
  • Mysql生成测试数据函数

    1、查看设置是否允许创建函数系统参数 show variables like ‘log_bin_trust_function_creators’; 2、临时设置允许创建函数系统参数…

    数据库 2023年6月16日
    083
  • Mysql索引总结

    一、索引分类 Hash索引:Hash 索引查询效率很高,时间复杂度O(1)。Mysql Innodb引擎不支持hash索引的。Hash索引适合精确查找,不适合范围查找。 平衡二叉树…

    数据库 2023年5月24日
    065
  • 详细记录一次stampstime字段引起pxc集群脑裂

    事故回顾 运维执行导入sql,导入后收到master2和master3节点宕机的报警;检查集群状态发现master1进入初始化模式,无法读写;master2和master3已经下线…

    数据库 2023年5月24日
    076
  • [javaweb]jsp,jstl,el表达式的使用

    jsp java server page:java服务器前端页面,和servlet一样,用于动态web开发。 特点: 写jsp页面就像在写html html只给用户提供静态数据,j…

    数据库 2023年6月16日
    083
  • Django中后台语言设置的注意点

    2022-09-28 问题描述: 今天在设置Django项目后台语言设置的时候,出现了一个问题, 显示没有”zh-Hanz”语言,之前,输入语言设置的时候,…

    数据库 2023年6月14日
    073
  • 55 道MySQL基础题

    1.一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后, 删除了第 15, 16, 17 条记录,再把 Mysql 重启,再 insert 一条记 录,这条记录…

    数据库 2023年5月24日
    0108
  • writeset参数配置探索——究竟在哪个角色上配置参数?

    关于writeset,一直以来我都是所有节点同时配置下面参数: binlog_transaction_dependency_tracking=WRITESET transactio…

    数据库 2023年6月16日
    082
  • Failed to write to mysql.slow_log

    最近将一MySQL数据库的系统变量log_output从file调整为table后,偶尔会收到告警邮件,告警邮件内容为: Failed to write to mysql.slow…

    数据库 2023年5月24日
    085
  • Node安装与卸载命令汇总

    nvm(MAC管理node版本) 安装最新稳定版node: nvm install stable 安装指定版本: nvm install <version></v…

    数据库 2023年6月9日
    065
  • 4、异常

    一、异常的体系结构: java.lang.Throwable |—–java.lang.Error:一般不编写针对性的代码进行处理。 |—&#8…

    数据库 2023年6月6日
    093
  • Mybatis基础知识大全!!!

    1. 简介 1.1什么是Mybatis 1.2 如何获得Mybatis 1.3 使用Mybatis的好处: 2.初涉Mybatis 2.1环境搭建 2.2、创建一个模块(项目) 2…

    数据库 2023年6月16日
    0112
  • day40-网络编程02

    Java网络编程02 4.TCP网络通信编程 基本介绍 基于客户端–服务端的网络通信 底层使用的是TCP/IP协议 应用场景举例:客户端发送数据,服务端接收并显示控制台…

    数据库 2023年6月11日
    073
  • Java面试题(七)–Spring Boot

    1、Spring Boot提供了哪些核心功能?(高频) 1、jar包方式运行 通过引入spring-boot-maven-plugin插件可以将springboot项目打包成一个可…

    数据库 2023年6月16日
    087
  • SQL的函数

    MySQL常用的日期函数函数 功能 curdate() 返回当前日期 curtime() 返回当前时间 now() 返回当前日期和时间 year() 获取指定date的年份 mon…

    数据库 2023年5月24日
    090
  • MySQL 数据库自动备份

    压缩文件恢复 gzip -d backup.sql.gz | mysql -h -u -p Tips: gzip -d为解压, 下面介绍下gzip用法与参数介绍(gzip命令只是压…

    数据库 2023年5月24日
    070
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球