汇编语言——第1次上机实验

准备


硬件:pc机,32位win操作系统,能够运行dos,某些64位win10系统可能会不支持

软件:masm程序


实验内容


1.win+r运行dos,cd到指定的masm目录(为了调试方便,所有的文件和程序都放在该目录下)

汇编语言——第1次上机实验_第1张图片

2.edit  filename.asm回车后进行编辑,输入相应的汇编程序。(也可以用nodepad++,vim等二进制文本编辑器)


汇编语言——第1次上机实验_第2张图片

该汇编语句的源码(实现两个数的相加):

DATA  SEGMENT               ;DATA段定义开始
             BUF1 DB 34H 
             BUF2 DB 27H
             SUM  DB ?
DATA  ENDS                         ;DATA段定义结束
CODE  SEGMENT                ;CODE段定义开始
             ASSUME CS:CODE
            ASSUME DS:DATA ;段性质规定
START: MOV AX,DATA              
               MOV DS,AX          ;给DS赋值
               MOV AL, BUF1     ;取第一个加数
              ADD AL, BUF2       ;两数加
              MOV SUM, AL       ;和放入SUM单元
              MOV AH,4CH                  
              INT 21H                    ;返回DOS
CODE  ENDS                         ;CODE段定义结束
             END START              ;源程序结束

3.运行masm filename.asm对该文件进行汇编(如果出现error或者warning请检查源程序),汇编结束会产生相应的obj文件。

汇编语言——第1次上机实验_第3张图片

4.link  filename.obj连接程序,使得二进制目标文件变成可执行文件,操作后生成exe文件。

汇编语言——第1次上机实验_第4张图片

4.输入my直接运行汇编好的程序(sum已经mov到相应的内存单元)。


附加:

debug调试

1.debug filename.exe进入该程序的调试模式。

2.不停的t命令单步调试,直到完成mov sum。

汇编语言——第1次上机实验_第5张图片

3.d模式查看内存单元的内容。

可以看到,0000到0002三个单元的数分别为34 27 5B(前两个为加数,后一个为和)


至此,整个汇编上机过程完成,而需要掌握的是中间的编辑,汇编,运行步骤。

对于debug模式,要学会使用常用的t(单步调试),d(查看内存单元内容),u(反汇编)等命令。


你可能感兴趣的:(汇编学习)