北京工业大学微机原理实验报告.doc
文本预览下载声明
微机原理实验报告
—实验二 熟悉汇编程序建立
及其调试方法
姓名: 刘莹莹
学号
实验目的
1、熟悉汇编语言源程序的框架结构,学会编制汇程序。
2、熟悉汇编语言上机操作的过程,学会汇编程序调试方法。
实验内容
学习编写汇编语言源程序的方法,了解数据存放格式。
阅读给出的程序,找出程序中的错误。
通过调试给出的汇编语言源程序,了解并掌握汇编语言程序的建立、汇编、链接、调试、修改和运行等全过程。
实验预习
阅读实验指导第一章的内容,了解汇编语言程序建立、汇编、链接、调试的全过程。
下面的汇编语言源程序有错误的,试给程序加注释。通过调试手段找出程序中的错误并修改之。写出程序的功能,画出程序流程图。
(1)程序修改前:
STACKSG: SEGMENT PARA STACK ‘STACK’ ;不能有冒号
DB 256 DUP(?)
STACKSG ENDS
DATASG: SEGMENT PARA ‘DATA’ ;不能有冒号
BLOCK DW 0,-5,8,256,-128,96,100,3,45,6,512
DW 23,56,420,75,0,-1024,-67,39,-2000
COUNT EQU 20
MAX DW ?
DATASG ENDS
CODESG: SEGMENT ;不能有冒号
ASSUME SS:STACKSG , CS:CODESG
ASSUME DS:DATASG
ORG 100H
BEGIN MOV DS, DATASG ;BEGIN: 应改为 MOV AX , DATASG
MOV DS, AX
LEA SI ,BLOCK
MOV CX, COUNT
DEC CX
MOV AX , [SI]
CHKMAX ADD SI,2 ;应加冒号CHKMAX:
CMP [SI] , AX
JLE NEXT
MOV AX , [SI]
DEC CX ;删除
NEXT: LOOP CHKMAX
MOV MAX ,AX
MOV AH, 4CH
INT 21H
CODESG ENDS
END BEGIN
(2)程序修改后:
STACKSG SEGMENT PARA STACK ‘STACK’
DB 256 DUP(?)
STACKSG ENDS
DATASG SEGMENT PARA ‘DATA’
BLOCK DW 0,-5,8,256,-128,96,100,3,45,6,512
DW 23,56,420,75,0,-1024,-67,39,-2000
COUNT EQU 20
MAX DW ?
DATASG ENDS
CODESG SEGMENT
ASSUME SS:STACKSG , CS:CODESG
ASSUME DS:DATASG
ORG 100H
BEGIN MOV AX , DATASG
MOV DS, AX
LEA SI ,BLOCK
MOV CX, COUNT
DEC CX
MOV AX , [SI]
CHKMAX: ADD SI,2
CMP [S
显示全部