任务一:补全程序t1.asm完成在屏幕上输出内存单元中的十进制两位数。 (1)将任务一的实验代码补全并写入记事本截图如下: (2)把文件在masm环境下编程、连接之后,用debug调试,操作截图如下: (3)使用g命令执行程序之后,程序运行结果截图为: 任务二:补全程序t2.asm在屏幕上输出dat ...
分类:
其他好文 时间:
2018-12-06 20:34:41
阅读次数:
144
任务一:在屏幕上输出内存单元中十进制的两位数。 任务二: 任务三:在屏幕中间输出绿色,绿底红色,白底蓝色的字符串'welcome to masm!'。 任务四:实验分析与总结 数字字符要先转换为相对应的数字,然后再在屏幕上输出; 最后的彩色字体和所在的彩色缓冲区的内存有关,感觉蛮有意思,但是不是很理 ...
分类:
其他好文 时间:
2018-12-05 20:45:56
阅读次数:
121
实验1 屏幕上输出内存单元中的十进制两位数 实验结果 实验2 在屏幕上输出data 段定义的5 个十进制两位数,数据和数据之间以空格间隔。 实验结果 实验3 在屏幕中间分别显示绿色,绿底红色,白底蓝色的字符串’welcome to masm!'。 实验结果 总结与体会 1.要熟悉int 21h的使用 ...
分类:
其他好文 时间:
2018-12-03 21:40:59
阅读次数:
190
四、实验结论 *任务(1)(2)(3)基本步骤相同,这里只列举出(1)的实验步骤 步骤一:把要使用的代码粘贴到masm文件夹中。 步骤二:编译、连接、用debug调试。 步骤三:用r命令查看哥寄存器的值。 cs是code的段地址,ds是data的段地址,ss是stack的段地址。这是因为代码前面的声 ...
分类:
其他好文 时间:
2018-11-25 21:20:18
阅读次数:
257
1.源程序 ①伪指令:没有对应的机器指令,最终不被CPU所执行 如上述程序segment和ends是一对成对使用的伪指令,可以用来定义一个段;一个有意义的汇编程序中至少有一个段,这个段用来存放代码。 ②end end是一个汇编程序结束的标记,ends是“end segment”这里要记清楚 ③ass ...
分类:
编程语言 时间:
2018-11-25 17:46:13
阅读次数:
231
实验1: 一:将代码输入在6.txt中,将其保存在masm文件夹下,并改后缀为asm 二:使用dosbox编译,调试该文件,连接完成后使用debug中的r命令查看寄存器中的值 从中我发现,cs的值为076c,再使用u命令反汇编实验代码,用g命令运行,再用d命令查看data段中的值 从中我发现,在CP ...
分类:
其他好文 时间:
2018-11-24 14:37:34
阅读次数:
241
1. 综合使用loop,[bx],编写完整汇编程序,实现向内存b800:07b8 开始的连续16 个 字单元重复填充字数据0403H。 然后在 masm tt.asm; link tt.obj; 屏幕中间出现一排红心。 将源代码程序中字数据0403H→修改为0441H,运行截图 2. 综合使用 lo ...
分类:
其他好文 时间:
2018-11-22 22:32:42
阅读次数:
232
四、实验结论 1. 练习1 第一步,在记事本中输入实验要求中提供的代码,结果如下: 将其以文件名t1.asm另存为到E:/masm。 第2步,为方便后续操作,此处先准备一个批处理文件: 同样将其放入E盘masm路径下,重命名为process.bat。 (1)进入并配置好DSBox环境,使用proce ...
分类:
编程语言 时间:
2018-11-18 21:07:57
阅读次数:
222
练习1: 源码如下: assume cs:codecode segmentmov ah,2mov dl,3add dl,30hint 21h mov ah,2mov dl,6add dl,30hint 21h mov ah,4chint 21hcode endsend masm编译结果: link结 ...
分类:
其他好文 时间:
2018-11-18 16:07:50
阅读次数:
172
进入dos模式使用edit编写源文件并保存为t1.asm。 运行masm进行编译 第一行输入文件名t1(默认为.asm)文件后面全部enter 运行link链接器,输入t1 (可以直接按enter生成在默认目录下面,也可以c:\生成在指定位置(挂载的目录)) 运行t1.exe,输出值为36 将lin ...
分类:
其他好文 时间:
2018-11-18 14:14:12
阅读次数:
183