汇编实验九 根据材料编程

写在前面的提示:

  1. 特别说明:
    本次实验中所需的 80×25 彩色字符模式只有在全屏 dos 下才能看到效果。(在 dosbox 下, 有些系统中会出现屏幕上彩色块显示不稳定的状况)
    故,请使用「Masm for Windows 集成实验环境共享版」完成此程序编写及效果查看。 启动「Masm for Windows 集成实验环境共享版」后,按要求设置其兼容模式:
  2. 提示
    编程实现需要考虑的点:
    1.屏幕中间对应的显存位置要计算好
    2.绿色、绿底红色、白底蓝色的字符串——每个字符及属性的信息可以提前定义好在数据 段中,然后向相应的显存复制(其实就是 mov)。
    附:本题中显示字符串所对应的显存空间偏移地址。
    80×25 的彩色字符模式,共计 25 行:0~24 行 每一行 160 个字节(十六进制 A0H) 中间的位置在 line11, 12, 13。
    在这里插入图片描述

在这里插入图片描述

  1. 关联引导练习
    1.在 debug 里参考图 1,使用 e 命令直接向显存 B800:0000 开始的 8 个字节写入 ABCD,
    属性值绿色。观察效果。
    在这里插入图片描述
    2.在 debug 里参考图 2,使用 e 命令直接向显存 B800:06e0 开始的 8 个字节写入 ABCD, 属性值绿底红色,观察效果。

在这里插入图片描述

这两个练习都是使用 e 命令直接向相应的显存缓冲区写入字符及属性值。由练习直观可见,
说明: 只要将字符及属性值正确地写入显示所对应的缓冲区。即可实现字符串的显示。
3. 在「Masm for Windows 集成实验环境共享版」中,输入下面的源程序:

在这里插入图片描述在这里插入图片描述
说明:这道练习是在源程序中,将要显示的字符及属性值写入相应的显存缓冲区,从而达到显示的。
请结合提示及 ex9.asm 给出的程序框架及注释提示,动手尝试完成此次实验。

实验内容

  1. 补全程序 t1.asm,完成在屏幕上输出内存单元中的十进制两位数。
    程序代码截图:
    在这里插入图片描述
    在这里插入图片描述

运行后的截图:
在这里插入图片描述
成功输出~

  1. 补全程序 t2.asm,完成在屏幕上输出 data 段定义的 5 个十进制两位数,数据和数据 之间以空格间隔。
    程序代码截图:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
成功输出~
在掌握了任务一的技能后,任务二就很好做了,只需要加入loop循环即可。

  1. 教材实验 9(P187):显示绿色、红底绿色、白底蓝色的welcome to masm!
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

程序运行结果:
在这里插入图片描述

实验任务一,二,三难度循序渐进,自己动手尝试乐趣很大,但是也遇到了一些错误,幸运的是,都找到了并且改正了回来。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值