• 领导讲话
  • 自我介绍
  • 党会党课
  • 文秘知识
  • 转正申请
  • 问题清单
  • 动员大会
  • 年终总结
  • 工作总结
  • 思想汇报
  • 实践报告
  • 工作汇报
  • 心得体会
  • 研讨交流
  • 述职报告
  • 工作方案
  • 政府报告
  • 调研报告
  • 自查报告
  • 实验报告
  • 计划规划
  • 申报材料
  • 当前位置: 勤学考试网 > 公文文档 > 转正申请 > 正文

    优质实用文档——实验报告一:汇编语言实验基础x

    时间:2020-09-25 12:32:58 来源:勤学考试网 本文已影响 勤学考试网手机站

    第 PAGE 1 页 共 NUMPAGES 6 页

    实验报告一:汇编语言实验基础

    一.实验目的:

    1. 熟悉汇编语言程序的开发过程以及汇编语言常用软件的使用方法

    2. 掌握DEBUG常用命令的使用方法

    二、实验内容:

    1.DEBUG 命令使用

    2.8088常用指令练习

    三、实验步骤:

    (一)DEBUG 命令使用:

    1、打 DEBUG 进入 DEBUG 控制,显示提示符'_ '。

    2、用命令 F 100 10F 'A' 将'A'的ASCII码填入内存。

    3、用命令 D 100 10F 观察内存中的16进制码及屏幕右边的ASCII字符。

    4、用命令 F 110 11F 41 重复上二项实验,观察结果并比较。

    5、用命令 E 100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存 单元中,再用D命令观察结果,看键入的16进制数是什么字符的ASCII码?

    6、用H命令检查下列各组16进制数加减结果并和你的手算结果比较:

    (1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758,347FH

    7、用R 命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF 和AF的内容。

    8、用R命令将AX,BX内容改写为1050H及23A8H。

    (二)8088常用指令练习

    1、传送指令

    1)用A命令在内存100H处键入下列内容:

    MOV AX,1234

    MOV BX,5678

    XCHG AX,BX

    MOV AH,35

    MOV AL,48

    MOV DX,75AB

    XCHG AX,DX

    2)用U命令检查键入的程序,特别注意左边的机器码。

    3)用T命令逐条运行这些指令,注意有关寄存器及IP的变化情况。并注意标志位有无变化。

    2、加减法指令:

    1)用A命令在内存100H处键入下列内容:

    MOV AH,34

    MOV AL,22

    ADD AL,AH

    SUB AL,78

    MOV CX,1284

    MOV DX,5678

    ADD CX,DX

    SUB CX,AX

    SUB CX,CX

    2)用U命令检查键入的程序及对应的机器码。

    3)用T命令逐条运行这些指令,检查有关寄存器及ZF情况。

    3、内存操作数及各种寻址方式使用:

    内容:

    MOV AX,1234

    MOV [1000],AX

    MOV BX,1002

    MOV BYTE PTR[BX],20

    MOV DL,39

    INC BX

    MOV [BX],DL

    DEC DL

    MOV SI,3

    MOV [BX+SI],DL

    MOV [BX+SI+1],DL

    MOV WORD PTR[BX+SI+2],2846

    步骤:

    1)用A命令键入上述程序,并用T命令逐条运行。

    2)每运行一条有关内存操作数的指令,用D命令检查有关内存单元的内容并思考是什么寻址方式。

    3)注意D命令显示结果中右边的ASCII字符及双字节数存放法。

    实验报告二: 分支程序实验

    1.? 实验目的:

    (1) 掌握分支程序的设计方法

    (2) 掌握利用DEBUG修改参数、检查结果的方法。

    (3) 掌握汇编语言源程序的编辑、汇编、连接及调试过程。

    2.? 实验内容

    编写一个程序,显示AL寄存器中的两位十六进制数

    3. 实验准备

    (1) 编写实验内容要求的程序。

    (2) 写出调试以上程序,即修改程序参数,检查结果的操作方法。

    (3) 熟悉源程序汇编、连接命令的使用方法即要回答的内容。

    4. 实验步骤

    (1) 用EDIT或其它编辑软件,编写.ASM源程序,例如HEXASC.ASM及DSPKEY.ASM。

    (2) 对其进行汇编及连接,产生.EXE文件。

    (3) 对.EXE文件进行调试运行。

    a.? ? 用DEBUG调试运行,学会修改AL内容的方法。

    b.? ? 对DSPKEY.EXE键入不同的字符,分别进行调试。

    c.? ? 在MS-DOS下运行这两个.EXE文件。

    5. 程序:

    ? ? CODE SEGMENT

    ? ? ASSUME CS:CODE

    START: MOV AL, 3EH

    ? ? MOV BL, AL

    ? ? MOV DL, AL

    ? ? MOV CL, 4

    ? ? SHR DL, CL

    ? ? CMP DL, 9

    ? ? JBE NEXT1

    ? ? ADD DL, 7

    NEXT1: ADD DL, 30H

    ? ? MOV AH, 2

    ? ? INT 21H? ? ? ;显示高位ASCII码

    ? ? MOV DL, BL

    ? ? AND DL, 0FH

    ? ? CMP DL, 9

    ? ? JBE NEXT2

    ? ? ADD DL, 7

    NEXT2: ADD DL, 30H

    ? ? MOV AH, 2

    ? ? INT 21H? ? ? ;显示低位ASCII码

    ? MOV AH, 4CH

    ? INT 21H

    CODE ENDS
    ? ;返回DOS

    ? END START

    实验报告三 循环程序设计实验

    一.实验目的

    1.熟练掌握循环程序结构的设计方法。

    2.进一步熟悉DEBUG调试程序即及其各种命令的用法

    3.学会在DEBUG中使用各个命令以后怎样找出自己所要的各个存储单元的地址。

    4.锻炼设计程序算法和编写程序的能力。

    5.理解各个控制转移指令的意义和使用方法。

    二.实验内容

    编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。

    三.实验步骤:

    (1)在实验前设计好算法并编写出程序。

    (2) 点击桌面上的“开始”按钮,选择“运行”,在出现的对话框中输入“cmd”按“确定”,然后用cd\命令进入masm6.11文件夹。

    (3)用edit+文件名.asm在masm6.11文件夹里新建一个文件并回车,进入编写程序的页面,文件名为aaa.asm。

    (4)程序如下:

    .model small

    .stack 256h

    .data

    .code

    .startup

    mov ax,@data

    mov ds,ax

    l1: mov ah,01h

    int 21h

    or al,al

    jz l3

    cmp al,'a'

    jb l2

    cmp al,'z'

    ja l2

    sub al,20h

    mov dl,al

    mov ah,02h

    int 21h

    l2:jmp l1

    l3: mov ax,4c00h

    int 21h

    end

    (5)把程序保存后退出,然后用ml aaa.asm命令检查并连接程序(即ml+文件名.asm),在程序没有出错时生成aaa.obj文件和aaa.exe文件。具体情况如下所示:

    (6)进入degug调试程序。输入debug aaa.exe(即debug+文件名.exe)回车进入debug调试。先使用一次反汇编命令U回车后,出现前十六条指令的反汇编结果,具体情况如下:

    A.在使用了第一个U命令以后可以看到我自己编写的核心指令是从0B82:0017开始的,但这时还没有找到核心程序的结束点,故再次使用反汇编U命令,这时页面的显示内容如下:

    B.在使用第二个U命令以后可以观察到核心程序的结束点是在0b82:0036,故再使用执行断点命令G命令(输入G 0036回车),然后再键盘上输入任意的小写字母,都会自动输出对应的大写字母,如下所示:

    C.当输入一个大写字母或别的内容加回车键则退出程序了。

    D.该程序在连接生成了可执行程序(即exe程序)以后可以直接执行。方法为在masm6.11文件中打开相对应的exe文件。

    E.同样,要退出程序,输入大写字母或别的内容就能自动退出程序了。

    • 考试时间
    • 范文大全
    • 作文大全
    • 课程
    • 试题
    • 招聘
    • 文档大全

    推荐访问