文档库 最新最全的文档下载
当前位置:文档库 › 汇编语言-实验一

汇编语言-实验一

汇编语言-实验一

汇编语言实验报告

(实验一)

姓名班级学号

一.实验目的

1.掌握汇编语言程序的上机步骤;

(1)用编辑程序(如EDIT、记事本等)编辑汇编语言源程序(建立.ASM文件)。

(2)用MASM程序产生OBJ文件。

(3)用LIINK程序产生EXE文件。

(4)程序的运行(用DEBUG或在DOS下直接运行)。

2.掌握DEBUG的使用方法。

二.程序说明

1.在数据段DATA中有两个数据X和Y,假设X=1122H,Y=3344H,编程求两个字的和,结果存放到Z单元中。

2.从SOURCE_BUFFER单元开始存放了20个字母A,编程将这个20个字母A 的字符串传送到DEST_BUFFER开始的单元中。

3.从SOURCE_BUFFER单元开始存放了20个字母A,编程将这个20个字母A 的字符串向下移10个单元。

三.设计思想

四.程序代码

五.结果分析并回答:

1.设计的程序包含了几个段

2.你的代码经过编译和连接之后,总共占用多少个字节

3.调用DEBUG进行反汇编,查看程序的第一条指令的地址码是多少?最后一条指令的地址码是多少?

计算机组成原理实验1-汇编语言实验

微处理器与接口技术 实验指导

实验一监控程序与汇编语言程序设计实验 一、实验要求 1、实验之前认真预习,明确实验的目的和具体实验内容,设计好主要的待实验的程序,做好实验之前的必要准备。 2、想好实验的操作步骤,明确通过实验到底可以学习哪些知识,想一想怎么样有意识地提高教学实验的真正效果。 3、在教学实验过程中,要爱护教学实验设备,认真记录和仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。 4、实验之后认真写出实验报告,重点在于预习时准备的内容,实验数据,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。善于总结和发现问题,写好实验报告是培养实际工作能力非常重要的一个环节,应给以足够的重视。 二、实验目的 【1】学习和了解TEC-XP16教学实验系统监控命令的用法; 【2】学习和了解TEC-XP16教学实验系统的指令系统;

【3】学习简单的TEC-XP16教学实验系统汇编程序设计。 三、实验注意事项 (一)实验箱检查 【1】连接电源线和通讯线前TEC-XP16实验系统的电源开关一定要处于断开状态,否则可能会对TEC-XP16实验系统上的芯片和PC机的串口造成损害。 【2】五位控制开关的功能示意图如下: 【3】几种常用的工作方式【开关拨到上方表示为1,拨到下方为0】 (二)软件操作注意事项 【1】用户在选择串口时,选定的是PC机的串口1或串口2,而不是TEC-XP16实验系统上的串口。即选定的是用户实验时通讯线接的PC机的端口; 【2】如果在运行到第五步时没有出现应该出现的界面,用户需要检查是不是打开了两个软件界面,若是,关掉其中一个再试; 【3】有时若TEC-XP16实验系统不通讯,也可以重新启动软件或是重新启动PC再试; 【4】在打开该应用软件时,其它的同样会用到该串口的应用软件要先关掉。

汇编实验指导书

汇编语言实验指导书 授课教师李娜 授课对象 05计科、网络、06计科 授课时间 07-08学年第一学期 授课地点一、二、四机房 课程简介 一.实验课程的性质和目的 汇编语言程序设计是计算机专业的一门专业基础课,是学好计算机底层系统构成的课程。汇编语言程序设计是一门实用性很强的课程。汇编语言程序程序设计实验教案是教案的重要环节,是理论教案的重要补充,只有通过实验,学生才能熟练掌握汇编语言程序设计的基本方法,并对其有更深刻的认识。本门实验课是单独设课。 二.实验教案的方法和手段 为了提高实验教案效果,实验严把预习、实验、实验报告3个环节。实验在软件实验室机房完成,单独设组,个人完成实验,每项实验以小班为单位,实验考勤采用电子签到制度。 预习:安排学生学习实验内容,了解实验的过程和操作规程,并布置思考题和预习报告,让学生有目的地去查阅与实验相关的资料。 实验:实验开始前由指导教师讲解实验要点,提出注意事项。实验过程中,主题是学生,教师是辅助作用,要求学生独立完成实验。 实验报告:实验结束后,强调学生及时填写实验记录表,对实验过程进行详细记录,对实验结果细致地分析、讨论,完成相关思考题作业。 三.课程学时 本实验课实验总学时为32学时。 四.实验成绩的考核方法 汇编语言实验成绩按百分制核定。实验过程占50%,实验报告占50%。五.大纲的适用范围 本大纲适用计算机科学与技术专业和计算机应用与维护专业学生。 六.主要设备与器材配备

七.实验项目汇总表 实验一熟悉汇编语言编程环境 一.实验目的 <1)熟悉汇编语言编程环境; <2)掌握基本汇编程序。。 二.实验仪器设备 计算机 三.实验重点、难点 熟悉汇编语言编程环境; DEBUG常用命令的正确使用。-T/-U/-Q/-G 四.实验题目 比较两个字符串string1和string2所含的字符是否相同,若相同则显示‘metch’,否则,显示’no match’。 五.实验内容、步骤 1.调用EDIT建立ASM源文件。 2.用汇编程序MASM对源文件汇编产生目标文件OBJ。 <如有问题,可用DEBUG调试。) 3.用LINK联接程序产生执行文件EXE。 4.执行程序。 附:源程序 ;PROGRAM TITLE GOES HERE—COMPARE STRING ;******************************************************** data segment string1 db 'move the cursor backward.' String2 db 'move the cursor backward.'

实验四-循环结构汇编语言程序的设计实验报告

循环结构汇编语言程序设计实验报告

实验四循环结构汇编语言程序设计 一、实验目的 1、学习循环结构的汇编语言程序的设计和调试。 2、学习通过直接对8086计算机的寄存器和存的直接访问,编写更高效简洁的汇编程序。 3、加深掌握计算机整体的工作过程。 3、加深对排序算法的理解。 二、实验任务 编写程序求出数组A中(20个元素)的最大值和最小值(数组没有排序)。 要求至少采用二种不同的排序算法来实现。( 快速排序,归并排序、堆排序、Shell排序、插入排序、冒泡排序、交换排序、选择排序、基数排序……) 三、实验容 为了更好地实现老师所布置的实验任务,我们根据情况选取以下两种方式实

验。 1、利用冒泡排序的方式求解数组A中元素的最大值最小值。设计流程图如 下所示: 2、利用选择排序的方式求得数组A中元素的序列。设计流程图如下所示:

四、实验环境 PC机: winXP/win7(32位)/win7(64位)+winxp 虚拟机 汇编工具:Masm.exe+Link.exe。 五、实验步骤 1)建立和生成的文件 (1)编写的源程序,源程序名为abc、扩展名为.asm (2)源程序经汇编程序Masm.exe汇编(翻译)后生成二进制目标程序,文件名为abc.obj (3)目标程序需要经Link.exe连接生成可执行程序,文件名为abc.exe 2)汇编环境 最基本的汇编环境只需要两个文件:Masm.exe和Link.exe。将这两个文件拷入到已经建好的文件夹(例如 huibian)中,并将文件夹huibian放在硬盘根

目录C :\>下 3)上机步骤 进入DOS窗口中执行。 4)调试程序 进入DEBUG后,调试程序 5)调试成功后重新汇编、连接并生成可执行代码 6)执行程序,并对运行结果截图。 利用冒泡排序求得数组A中元素的最大值最小值的实验结果如下图所示:(说明:输入数据为:13,0,59,900,587,1,657,234,34,48) 利用选择排序对数组A中元素排序得到的序列得实验结果如下图所示:(说明:输入数据为13,0,59,900,587,1,657,234,34,48)

汇编语言程序设计实验指导书

汇编语言实验报告题目:子程序设计 班级:rbw111 姓名:吴德鹏 学号:201107092416 完成日期:2013.12.22

概述: 《汇编语言程序设计》实验指导书是非计算机、非电类的其他专业:包括纺织、机械、热能等专业的《汇编语言程序设计》课程配套使用的实验指导。在理论课的教学中着重介绍微机系统的组成及工作原理,针对INTEL 8088/8086系列介绍相应的指令系统和汇编语言程序设计,介绍了接口的一般概念和CPU与外设交换信息的常用方式的软硬件设计思想。实验课测重培养学生的汇编语言设计能力及一些简单接口程序设计的方法,训练学生汇编语言程序调试的能力。通过实验,使学生加深对课堂教学内容的理解,培养学生综合使用微型机的初步能力。其中实验一、实验二是后续实验的基础,通过该实验,学生应能了解汇编语言源程序的一般格式,熟悉汇编语言程序的上机过程和调试程序的基本方法,重点放在DEBUG调试程序的命令使用方法上。也可以将实验一、实验二合并为一个实验,按照*实验一的要求进行;实验三、四、五进一步培养学生的各种结构的程序设计能力;实验六主要是简单接口的综合应用,为学生建立一个微机应用系统的概念,使学生通过具体的实例对相关的接口有感性认识,提高学生的实际动手能力和独立解决问题的能力。教师可以根据专业学时的多少和学生的具体情况来开设实验。 一、实验目的: 1.进一步熟悉分支、循环程序设计的方法及用DEBUG调式程序的方法。 2.熟练掌握子程序的参数传递的方式、子程序的嵌套、递归调用及其设计方法和技巧。 3、培养学生创新精神和独立运用所学基本知识和技能分析问题和解决问题的能力。 二、实验属性: 显示学生名次表:编制一程序,要求接收从键盘输入的一个班的学生成绩,并存放于50字的grade数组中,其中grade+i保存学号为i+1的学生的成绩。然后根据grade中的学生成绩,把学生名次填入50字的rank数组中,其中rank+i的内容是学号为i+1学生的名次。再按学号顺序把名次从终端上显示出来。 说明:程序设计中应体现出模块化程序设计思想和方法。 三、实验仪器设备: 提供实验条件。 Pc机并在debug的环境下进行调试

实验1_认识汇编语言

实验一 认识汇编语言 1.1 实验目的 (1)理解汇编语言的概念及其与高级语言的区别 (2)了解MASM6.11和TASM软件包的安装及配置 (3)了解常用汇编语言集成环境 (4)掌握汇编语言程序的上机过程 1.2 预备知识 1.2.1 系统环境 对汇编语言的初学者来说,DOS环境的优点是:DOS操作系统简单,程序员可以管理系统的所有资源,访问和修改系统中的所有内存(包括内存控制块、中断向量表),直接对I/O端口进行读写,便于对知识的学习和理解。其缺点是:单任务的DOS操作系统只有一个运行级别,任何进程与DOS操作系统都是同等级别的,致使系统中各个进程会相互影响。如果某个进程死机,整个系统就会瘫痪。 但是DOS系统已经退出历史舞台,目前的学生只熟悉Windows环境而对DOS知之甚少,继续要求学生在DOS系统的命令行界面下编写和调试程序,无疑存在巨大的困难。 目前,IBM PC及其兼容机配置的Intel系列微处理器可以工作在实模式、保护模式和虚拟86三种模式下。实模式是汇编语言入门的基础,是汇编语言教学中无法跨越的阶段。了解实模式是理解内存分段式管理和寻址方式的基础。保护模式是Windows系统的工作模式,虚拟86模式则是在保护模式下提供的模拟8086处理器工作的模式,为学习汇编语言提供了便利。DOS汇编程序在Win32环境中运行时,操作系统会模拟实模式运行16位进程。对于一些可能会影响整个操作系统工作的指令,windows操作系统会拒绝执行。64位的Windows 环境则不提供16位应用的虚拟环境。 因此,采用Win32环境进行汇编语言程序的编辑工作,在虚拟控制台环境中学习(汇编、连接和调试)汇编语言是最佳方案。下面我们将逐步给大家讲解如何安装和配置汇编语言的编译调试环境,并选择适合的编辑软件来组建汇编语言的集成环境。最后,叙述如何使用Visual Studio 2008 Express作为汇编语言的工作环境。 1.2.2 汇编语言上机过程 汇编语言程序需要经过编辑、汇编、连接、调试与执行等过程才能实现其具体功能。图1-1说明了汇编语言的上机过程。 第一步:编辑 使用编辑软件创建和编写汇编语言源文件,并以 .asm 作为文件名后缀。 第二步:汇编 使用汇编程序将源程序翻译成机器码形式的文件,以 .obj 为后缀的目标程序。汇编包括把源程序翻译成目标代码,并产生中间的.OBJ文件或模块。汇编程序的任务是为数据段中的每个数据项和代码段中的每条指令计算偏移值,并在所产生的.OBJ模块的前面直接建立一个头部来存储不确定的地址信息。在汇编时可以选择产生列表文件(.LST)和交叉引用文件(.CRF)。列表文件含有出错诊断信息,可以用来帮助检查源程序中的错误。交叉引用文件在编写大型程序时可以提供指令引用的数据项列表。 第三步:连接 使用连接程序完成对于目标程序的装配工作,生成可执行程序,以.exe或者.com为后缀的执行文件。连接程序的任务包括确定由汇编程序遗留下来的不确定的地址,并把分别汇

汇编语言实验2

计算机工程系实验报告 课程名称:汇编语言 实验项目名称:用机器指令和汇编语言指令编程 班级:15级计科4班姓名:梁红梅学号:15091413 一、实验目的: 1.学习Debug中D命令的使用方法,掌握查看指定内存单元的内容的指令,其中本实验中 主要掌握“d段地址:偏移地址”的格式; 2.了解Debug 中D命令程序的执行者:CPU,了解D命令的执行过程; 3.掌握CPU在访问内存单元时的主要过程; 4.学习怎样利用在Debug中cs、ds、ss、es这4个段寄存器,简化debug命令格式。 二、实验要求: 使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。Mov ax,ffff Mov ds,ax Mov ax,2200 Mov ss,ax Mov sp,0100 Mov ax,[0] ;ax= Add ax,[2] ;ax= Mov bx,[4] ;bx= Add bx,[6] ;bx= Push ax ;sp= 修改的内存单元的地址是内容为 Push bx ;sp= 修改的内存单元的地址是内容为 Pop ax ;sp= ;ax= Pop bx ;sp= ;ax= Push [4] ;sp= 修改的内存单元的地址是内容为 Push [6] ;sp= 修改的内存单元的地址是内容为

三、实验数据记录: 1.进入Debug后使用-a命令将程序写入内存 2.通过使用-t命令将写入内存的程序逐一执行,直到命令执行完毕

三、实验结果及分析: 1.mov ax,[0] 执行完成后 ax=C0EA; 2.add ax,[2]执行完成后ax=C0FC; 3.mov bx,[4] 执行完成后 bx=30F0; 4.add bx,[6]执行完成后 bx=6021; 5.push ax 执行完成后 sp= 00FE 修改的内存单元的地址是 2200:00FE 内容为C0FC 6.push bx 执行完成后 sp= 00FC 修改的内存单元的地址是 2200:00FC 内容为6021

汇编语言程序设计-实验指导书

汇编语言程序设计 实验指导书 编写:郑利平 合肥工业大学计算机与信息学院 2008-9-1

汇编语言程序设计实验指导书 《汇编语言程序设计》实验是学习本课程的每个考生必须要通过的一个重要的实践环节,根据“汇编语言程序设计自学考试大纲”规定:上机实验单独作为本课程的实验考核成绩。《汇编语言程序设计》是一门实践性很强的课程,只有多上机操作,对汇编语言源程序进行编辑、汇编、连接、调试和运行全过程的训练,才能加深对本课程基本知识的理解,才能熟练地掌握程序设计的方法与技巧,才能学好本课程。 本实验指导书是完全按照《汇编语言程序设计自学考试大纲》中“实验大纲”的要求编写的,为便于考生较好完成上机操作和实验报告,特此作出如下说明和要求: (1)做好上机实验的准备工作:应考者对每个实验需要进行预习,了解相关内容和具体要求,熟悉上机操作步骤,学会相关系统软件的使用,掌握各种操作调试命令。 (2)编写源程序:按照实验题目的要求,应考者要事先独立完成汇编语言源程序的编写工作,并对源程序进行认真的静态检查,减少错误的发生。 (3)完成实验报告:做完上机实验,应考者要严格按照实验报告的格式要求写出实验报告。实验报告的内容为:实验名称、实验的目的、实验的内容和要求、实验步骤、实验结果并附上源程序清单和程序流程图。

实验一DEBUG的使用 (一)实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 (二)实验设备 硬件环境:IBM-PC及其兼容机 软件环境:操作系统DOS3.0版本以上 调试程序https://www.wendangku.net/doc/313810488.html, (三)实验内容和要求 实验内容: 1、利用DEBUG程序中的“E”命令,将两个多字节数“12345678H”和“FEDCBA98H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H 单元中。 实验要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 (四)预习要求 1、复习DOS启动方式和DOS有关命令的使用; 2、阅读本书后的附录,熟悉掌握DEBUG调试程序中的A、D、E、G、Q、R、T、U命令的书写格式及功能; 3、复习寻址方式和相关的数据传送指令及算术运算指令。 (五)实验步骤 1、启动DOS操作系统 2、运行https://www.wendangku.net/doc/313810488.html,程序(若当前盘为C) C:>DEBUG↙ – ;(“–”为DEBUG提示符,仅当屏幕出现该提示符后,才可输入DEBUG 命令) 3、用“A”命令编辑和汇编源程序 –A ↙ 186E:0100 MOV AX,[0200]↙ 186E:0103 MOV BX,[0202]↙ 186E:0107 ADD AX,[0204]↙ 186E:010B ADC BX,[0206]↙ 186E:010F MOV [0208],AX↙ 186E:0112 MOV [020A],BX↙

汇编语言实验一

淮阴工学院 汇编语言程序设计实验报告 选题名称:实验一调试工具的使用方法训练 系(院):计算机工程学院 专业:计算机科学与技术 班级: 1101 姓名:康志杰学号: 1101301132 指导教师:王福德 学年学期:2013 学年第 2 学期 2013 年 4 月15 日

实验一利用DEBUG调试程序调试程序段 <1 > 实验目的: (1)熟悉DEBUG有关命令的使用方法 (2)利用DEBUG掌握有关指令的功能 (3)利用DEBUG运行简单的程序段 <2 > 实验内容 (1)进入和退出DEBUG程序 1)开始——运行,输入cmd,点确定或回车键进入DOS环境 2)在命令窗口输入debug进入debug程序 3)进入debug程序后,按q退出

(2) 学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。对于U命 令、N命令、W命令等,也应试一下。 1 显示存储器单元命令D 格式:D [<地址范围>] 功能:显示指定地址范围内的存储区数据,包括十六进制数据形式及其对应的ASCII码字符显示。 2 写存储器单元命令E 格式:E <地址> [<字符串>] 功能:逐个修改指定单元内容或将字节串写入指定的一组连续单元。 例:将字节串′computer′写入以100H为起始地址的存储器区。 -E 100′computer′ 3显示和修改某个指定寄存器内容, 格式为:-R 寄存器名 例如打入:-R AX 系统将响应如下: AX 0000

: 表示AX当前内容为0000,此时若不对其作修改,可按ENTER键,否则,打入修改后内容,如: -R BX BX 0000 :1000 则BX内容由0000改为1000 4显示和修改标志位状态, 命令格式为:-RF 系统将给出响应,如 NV UP EI PL NZ NA PO NC- 这时若不作修改可按ENTER键,否则在“-”号之后键入修改值,键入顺序任意。如 NV UP EI PL NZ NA PO NC-ZR CY

余敦辉《汇编语言》实验指导书实验1-实验3

《汇编语言》实验指导书

目录 实验一Debug命令的使用 (3) 实验二基本汇编指令的使用 (9) 实验三汇编语言程序的调试与运行 (13) 实验四系统功能调用程序的调试与运行………………错误!未定义书签。 实验五分支程序设计……………………………………错误!未定义书签。 实验六循环程序设计……………………………………错误!未定义书签。 实验七子程序设计………………………………………错误!未定义书签。 实验八高级汇编语言程序设计…………………………错误!未定义书签。 实验九I/O程序设计……………………………………错误!未定义书签。 实验十中断程序设计……………………………………错误!未定义书签。 实验十一综合程序设计 (38)

实验一Debug命令的使用 一、知识点 1、DEBUG简介 DEBUG.EXE是DOS提供的用于调试可执行程序的一个工具软件。在汇编语言程序调试中很常用。 DEBUG的提示符是“-”,所有DEBUG调试命令军在此提示符下输入。 DEBUG命令都是一个字母,后跟一个或多个参数,也可使用默认参数。 DEBUG命令的使用注意问题: (1)字母不分大小写 (2)只使用十六进制数,但没有带后缀字母“H” (3)命令如果不符合DEBUG的规则,则将以“error”提示,并以“^”指示出错位置。 (4)每个命令只有按下回车键后才有效,可以用Ctrl+Break终止命令的执行。 2、Debug的调入和退出 以WIN7环境为例,点击“开始/运行…”,在“运行”对话框中输入命令:cmd,然后点击“确定”,进入DOS命令行状态: C:\Documents and Settings\lfy> 然后输入命令: >Debug 进入Debug调试状态,出现Debug命令提示府“-”,在此提示符下可运行所需要的Debug 命令了。 退出Debug的命令:Q 3、Debug常用命令 (1)汇编命令A,格式为: - A [地址] 功能:从指定地址开始允许输入汇编指令,并将该指令汇编成机器指令代码从指定地址开始存放。若不指定地址,则系统从默认的地址开始存放。按回车键退出汇编状态 应用:用于调试一条指令或几条指令组成的一个程序段。

汇编语言实验

实验四屏幕字符显示程序 实验目的: 通过实验掌握下列知识: 1、8088指令: JMP,ROR,XOR,HLT。 2、利用DOS功能调用INT21H的2号和9号功能进行屏幕显示的方法。 3、直接向视频RAM(VRAM)送ASCII码进行屏幕显示的方法。 4、IBM-PC机的ASCII码表及控制字符。 5、命令(。COM)文件及使用方法。 6、利用^Break退出程序的方法及局限性。 实验内容及步骤: 一、利用INT 21 0AH号功能调用显示字符串。 1、用A命令在100H处键入下列程序: MOV AH, 9 MOV DX,110 INT 21 INT 20 2、用A命令在110H处键入下列字符串的ASCII码: DB 'This is a sample!$' 3、用N命令和W命令将此程序(包括数据区)存入文件名为AA。COM的磁盘文件中。(存入前BX:CX必须置为文件长度值)。 4、用Q命令退出DEBUG。 5、在DOS命令下打AA,运行此程序,即在屏幕上显示'This is a sample!'字符串,若不出现,用DEBUG检查程序有无错误。

二、利用INT 21H 2号功能显示字符: 1、用A命令在100H处键入下列程序: XOR DL,DL MOVCX,100 LOP:MOV AH,2 INT 21 INC DL PUSH CX MOV CX,8 DELY: PUSH CX MOV CX,0 J: LOOP J POP CX LOOP DELY POP CX LOOP LOP INT 20 2、用G命令运行程序,即在屏幕上依次缓慢的显示256个ASCII字符。仔细观察每个字符,和IBM-PC ASCII码表对照,看07H-0DH处控制字符显示结果与表上有何不同? 3、按CTRL+BREAK退出此程序,若一次不行可多做几次。

汇编语言第1-2章考前复习题

1. 知识点:0202(基于微处理器的计算机系统构成) 在下列的选项中,能够组成计算机系统的是(A )。选项A)硬件系统和软件系统 选项B)CPU、存储器、输入/输出设备 选项C)操作系统、各种语言 选项D)系统软件和应用软件 2. 知识点:01 (基础知识) 汇编语言属于(B) 选项A)用户软件 选项B)系统软件 选项C)高级语言 选项D)机器语言 5知识点:0203(中央处理机) 中央处理器CPU是由(D)组成的 选项A)运算器 选项B)控制器 选项C)寄存器组 选项D)前三者 答案:D 6. 知识点:0201(80x86微处理器) IBM PC机的DOS是属于(B)。 选项A)用户软件

选项B)系统软件 选项C)系统硬件 选项D)一种语言 8. 知识点:0203(中央处理机) 8086/8088 CPU的寄存器组中,8位的寄存器共有(C)个 选项A)4 选项B)6 选项C)8(al ah bl bhcl chdl dh) 选项D)10 9. 知识点:0203(中央处理机) 8086/8088 CPU的寄存器组中,16位的寄存器共有(D)个。 AX,BX,CX,DX,DS,CS,SS,ES,FS,GS,DI,SI,BP,SP 选项A)10 选项B)12 选项C)13 选项D)14 10. 知识点:0204(存储器) 8086/8088 CPU执行算术运算时PSW共有(C)个标志位会受影响。SF,ZF,PF,CF,OF,AF 选项A)4 选项B)5 选项C)6

11. 知识点:0204(存储器) 在程序执行过程中,IP寄存器始终保存的是(C)。选项A)上一条指令的首地址 选项B)本条指令的首地址 选项C)下一条指令的首地址 选项D)需计算有效地址后才能确定地址 12. 知识点:0204(存储器) IBM PC机的存储器可分(D)个段。 选项A)4 选项B)256 选项C)512 选项D)65536 13知识点:0204(存储器) 当使用BP作编程地址时,此时使用的是(D)段。选项A)CS 选项B)DS 选项C)ES 选项D)SS(堆栈段) 17知识点:0204(存储器) 存储器的一个字节表示( A)位。 选项A)8

实验4汇编实验

数学与软件科学学院实验报告 学期:2017至 2018第 2 学期 2018年4月4日课程名称: 汇编语言专业:信息与计算科学班级: 2015级_5班实验编号:4实验项目:编写、调试具有多个段的程序 指导教师:冉茂华 姓名:黄玉含学号:2015060512实验成绩: 1、将下面的程序编译、连接,用Debug加载、跟踪,然后回答问题。assume cs: code, ds:data, ss:stack data segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h data ends stack segment dw 0,0,0,0,0,0,0,0 stack ends code segment start: mov ax,stack mov ss,ax mov sp,16 mov ax,data mov ds,ax push ds:[0] push ds:[2] pop ds:[2] pop ds:[0] mov ax,4c00h int 21h code ends end start 执行结果如下:

○1说明了cs=___076c_____,ss=____076b______,ds=_______076a_________ (1)、CPU执行程序,程序返回前,data段中的数据是多少? 还未执行时的数据:

执行程序后的数据: ○2不变,因为程序加载进去段内容就已经固定。 (2)、CPU执行程序,程序返回前,cs=___076c_____,ss=____076b______,ds=_______076a_________。 (3)、设程序加载后,code段的段地址为X,则data段的段地址为___X-2_____,stack段的段地址为____x-1______。 分析:程序段的段地址总是16的倍数且程序在内存中顺序加载。

实验指导书参考2

汇编语言程序设计实验指导书

汇编语言程序设计实验指导书 《汇编语言程序设计》实验是学习本课程的每个考生必须要通过的一个重要的实践环节,根据“汇编语言程序设计自学考试大纲”规定:上机实验单独作为本课程的实验考核成绩。《汇编语言程序设计》是一门实践性很强的课程,只有多上机操作,对汇编语言源程序进行编辑、汇编、连接、调试和运行全过程的训练,才能加深对本课程基本知识的理解,才能熟练地掌握程序设计的方法与技巧,才能学好本课程。 本实验指导书是完全按照《汇编语言程序设计自学考试大纲》中“实验大纲”的要求编写的,为便于考生较好完成上机操作和实验报告,特此作出如下说明和要求: (1)做好上机实验的准备工作:应考者对每个实验需要进行预习,了解相关内容和具体要求,熟悉上机操作步骤,学会相关系统软件的使用,掌握各种操作调试命令。 (2)编写源程序:按照实验题目的要求,应考者要事先独立完成汇编语言源程序的编写工作,并对源程序进行认真的静态检查,减少错误的发生。 (3)完成实验报告:做完上机实验,应考者要严格按照实验报告的格式要求写出实验报告。实验报告的内容为:实验名称、实验的目的、实验的内容和要求、实验步骤、实验结果并附上源程序清单和程序流程图。

实验一DEBUG的使用 (一)实验目的 1、熟悉DEBUG程序中的命令,学会在DEBUG下调试运行汇编语言源程序。 2、掌握8086/8088的寻址方式及多字节数据的处理方法。 (二)实验设备 硬件环境:IBM-PC及其兼容机 软件环境:操作系统DOS3.0版本以上 调试程序https://www.wendangku.net/doc/313810488.html, (三)实验内容和要求 实验内容: 1、利用DEBUG程序中的“E”命令,将两个多字节数“12345678H”和“FEDCBA98H”分别送入起始地址为DS:0200H和DS:0204H两个单元中。 2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将DS:0200H单元和DS:0204H单元中的数据相加,并将运算结果存放在DS:0208H 单元中。 实验要求: 本次实验的内容均在DEBUG下完成,实现数据的装入、修改、显示;汇编语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。 (四)预习要求 1、复习DOS启动方式和DOS有关命令的使用; 2、阅读本书后的附录,熟悉掌握DEBUG调试程序中的A、D、E、G、Q、R、T、U命令的书写格式及功能; 3、复习寻址方式和相关的数据传送指令及算术运算指令。 (五)实验步骤 1、启动DOS操作系统 2、运行https://www.wendangku.net/doc/313810488.html,程序(若当前盘为C) C:>DEBUG↙ – ;(“–”为DEBUG提示符,仅当屏幕出现该提示符后,才可输入DEBUG 命令) 3、用“A”命令编辑和汇编源程序 –A↙ 186E:0100 MOV AX,[0200]↙ 186E:0103 MOV BX,[0202]↙ 186E:0107 ADD AX,[0204]↙ 186E:010B ADC BX,[0206]↙ 186E:010F MOV [0208],AX↙ 186E:0112 MOV [020A],BX↙

汇编语言-课程设计1

) 汇编语言课程实验报告 实验名称 课程设计1 实验环境 硬件平台:Intel Core i5-3210M 操作系统:DOSBox in Windows 软件工具:Turbo C , Debug, MASM 实验内容 《 将实验7中的Power idea公司的数据按照下图所示的格式在屏幕上显示出来。 实验步骤 1.要完成这个实验,首先我们需要编写三个子程序。第一个子程序是可以显示字符串到屏 幕的程序,其汇编代码如下: ;名称:show_str

;功能:在屏幕的指定位置,用指定颜色,显示一个用0结尾的字符串 ;参数:(dh)=行号,(dl)=列号(取值范围0~80),(cl)=颜色,ds:si:该字符串的首地址 ;返回:显示在屏幕上 ¥ show_str: push ax push cx push dx push es push si push di mov ax,0b800h - mov es,ax mov al,160 mul dh add dl,dl mov dh,0 add ax,dx mov di,ax mov ah,cl . show_str_x: mov cl,ds:[si] mov ch,0 jcxz show_str_f mov al,cl mov es:[di],ax inc si inc di 【 inc di jmp show_str_x show_str_f: pop di pop si pop es pop dx pop cx } pop ax ret 2.第二个程序是将word型数据转换为字符串,这样我们才能调用第一个程序将其打印出

汇编语言实验四

福建农林大学金山学院实验报告 系:信息与机电工程系专业:计算机科学与技术年级: 08 姓名:游品尧学号: 082231044 实验课程:汇编语言 实验室号:___ _605 实验设备号: F5 实验时间:11.22 指导教师签字:成绩: 实验四 DOS功能调用 1.实验目的和要求 1.学会DOS中关于显示功能调用指令的用法。 2.领会修改显存方法显示字符。 2.实验环境 实验的硬件环境是: IBM—PC机及其兼容机 实验的软件环境是: 操作系统:DOS 2.0以上;调试程序:https://www.wendangku.net/doc/313810488.html,;文本编程程序:EDIT.EXE、WPS.EXE;宏汇编程序:MASM.EXE(或ASM .EXE);连接装配程序:LINK .EXE;交叉引用程序:CREF.EXE(可有可无)。 3.实验内容及实验数据记录 1、输入一个字符,显示出来 2、输入一个字符串,显示出来 3、buf开始的3个的16位二进制数用十六进制数的形式显示出来, (1)理解程序 (2)输入程序,汇编,运行(在DOS状态下输入:文件名.EXE),观察结果。 (3)如果要分行显示,程序要如何修改? DATA SEGMENT BUF DW 4F59H, 56A8H, 0FF90H DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DA TA START: MOV AX, DA TA MOV DS, AX

MOV SI, 0 P: MOV BX, BUF[SI] MOV CH, 4 L: MOV CL, 4 ROL BX, CL MOV DL, BL AND DL, 0FH CMP DL, 10 JB NEXT ADD DL, 7 NEXT: ADD DL, 30H MOV AH, 2 INT 21H DEC CH JNZ L INC SI INC SI CMP SI, 4 JNA P MOV AH, 4CH INT 21H CODE ENDS END START 4、运行下列程序,在屏幕的第1行,会显示一个字符X,理解程序段STACK SEGMENT DB 128 DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK START: MOV AX,STACK MOV SS,AX MOV SP,128 MOV AX,0B800H

实验一基础汇编语言程序设计

实验一基础汇编语言程序设计 实验目的 1.学习和了解TEC-XP十六位机监控命令的用法; 2.学习和了解TEC-XP十六位机的指令系统; 3.学习简单的TEC-XP十六位机汇编程序设计。 实验内容 1.使用监控程序的R命令显示/修改寄存器内容、D命令显示存储器内容、E命令修改存储器内容; 2.使用A命令写一小段汇编程序,U命令反汇编刚输入的程序,用G命令连续运行该程序,用T、P命令单步运行并观察程序单步执行情况。 3.学习联机使用TEC-XP教学试验系统和仿真终端软件。 实验要求 在使用该教学机之前,应先熟悉教学机的各个组成部分及其使用方法。 实验步骤 1.关闭电源,将大板上的COMl口与PC机的串口相连; 2.接通电源,在PC机上运行PCEC.EXE文件,设置所用PC机的串口为“l”或“2”,其它的设置一般不用改动,直接回车即可; 3.置控制开关为001110(连续、内存读指令、组合逻辑、16位、联机),开关拨向上方表示“1”,拨向下方表示“0”,“X”表示任意。其它实验相同; 4.按一下“RESET”按键,再按一下“START”’按键,主机上显示: 5.用R命令查看寄存器内容或修改寄存器的内容 1.用R命令查看寄存器或修改寄存器内容 1)在命令行提示符状态下输入: R↙;显示寄存器的内容 注:寄存器的内容在运行程序或执行命令后会发生变化。

2)在命令行提示符状态下输入: R R0↙;修改寄存器R0的内容,被修改的寄存器与所赋值之间可以无空格, 也可有—个或数个空格 主机显示: 寄存器原值:xxxx 在后面输入新的值0036 再用R命令显示寄存器内容,则R0的内容变为0036。 2.用D命令显示存储器内容 在命令行提示符状态下输入: D 2000↙ 会显示从2000H地址开始的连续128个字的内容; 连续使用不带参数的D命令,起始地址会自动加128(即80H)。

8086汇编语言程序设计实验指导书

汇编语言上机实验指导书 一、概述 上机实验总学时为16学时,其中综合性实验为2学时。实验共有6项暂定为8次,每次2学时。 1.实验辅导的主要内容 实验辅导的内容包括每个实验的实验目的;实验内容;对实验的算法及实验方法的必要说明;实验准备;实验步骤;实验报告要求;实验程序及参考框图。开始的实验介绍较细,后面的实验简要介绍。 2.实验的软硬件要求 关于汇编语言程序设计的硬件要求不高,有IBM-PC/XT即可,但应有彩色显示器以便进行图形实验。软件方面应有MASM.EXE5.0版(包括LINK.EXE),与MS-DOS版本配套的DEBUG程序和EDIT.EXE编辑软件(其它编辑软件也可以)。 3.加强实践能力的培养 实验目的不光是为了验证书本理论,更重要的是对实践能力的培养。其中包括: 实际调试程序的能力,例如修改程序参数的能力,查看结果的能力,设置断点调试运行的能力等; 开发汇编语言应用程序的能力,例如应用有关汇编软件的能力,进行系统调用和BIOS功能调用的能力,进行模块程序设计的能力等。 对某一问题用不同的程序实现的能力,例如我们为每个实验提供了参考程序(或程序段),目的是让每个实验者参照样板程序将实验成功地实现,在掌握其方法后,自己改变程序或自己编制程序加以实现。 实验一汇编语言运行环境及方法、简单程序设计(2学时、验证性) 1.实验目的: (1) 熟悉汇编语言运行环境和方法 (2)了解如何使用汇编语言编制程序 (3) 熟悉DEBUG有关命令的使用方法 (4) 利用DEBUG掌握有关指令的功能 (5) 利用DEBUG运行简单的程序段 2.实验内容 (1)学会输入、编辑汇编语言程序 (2)学会对汇编语言程序进行汇编、连接和运行 (3)进入和退出DEBUG程序 (4)学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。对于U命令、N命令、W命令等,也应试一下。 3.实验准备 (1)仔细阅读有关汇编语言环境的内容,事先准备好使用的例子。 (2)准备好源程序清单、设计好调试步骤、测试方法、对运行结果的分析。 (3) 编写一个程序:比较2个字符串所含的字符是否相同。若相同则显示’Match.’,否则显示’No match!’;(1)仔细阅读有关DEBUG 命令的内容,对有关命令,都要事先准备好使用的例子。 4.实验步骤 (1)在DOS提示符下,进入MASM目录。 (2)在MASM目录下启动EDIT编辑程序,输入源程序,并对其进行汇编、连接和运行。 ①调用edit输入、编辑源程序并保存在指定的目录中;例:edit abc.asm ②用汇编程序masm对源程序汇编产生目标文件obj。例:masm abc 不断修改错误,直至汇编通过为止。 ③用连接程序link产生执行文件exe.例:link abc ④执行程序 可直接从DOS执行程序,即在DOS环境中,输入文件名即可。 (3)详细记录每一步所用的命令,以及查看结果的方法和具体结果。 5.实验报告要求 (1)源程序清单。 (2) 如何启动和退出EDIT程序。 (3) 如何对源程序进行汇编及编辑。 (4)如何启动和退出DEBUG程序。

汇编语言实验(1)

课程名称汇编语言与微机原理实验名称字符串显示实验 实验目的、要求 1.掌握汇编语言程序设计的编写链接调试运行的完整过程 2.掌握利用masm.exe、link.exe等进行汇编、连接的方法及执行目的程序的方法。 3.初步认识ASCII码 4.初步认识利用DOS系统功能调用显示字符与字符串的方法 5.认识汇编源程序结构(框架)。 实验原理 利用DOS的中断调用在屏幕上显示字符串”Hello World”。 主要设备 计算机一台汇编语言软件 实验步骤及原始数据记录 程序源代码 1.显示数据区中的字符串"Hello World" assume cs:code,ds:data,ss:stack stack segment stack dw 256 dup (0) stack ends data segment msg db 'Hello World!',0dh,0ah,$ data ends code segment start: mov ax,data mov ds,ax mov ah,09h mov dx,offset msg int 21h exit: mov ah,4ch int 21h code ends end start

四、操作步骤: 1.在C盘生成一个新文件夹,例如P1,在该文件夹中拷入masm.exe、link.exe、debug.exe等工具程序 2.打开记事本,将上面第1个程序复制生成纯文本文件,文件名以.asm为扩展名。例如:A1.ASM。(注意保存时要选择保存类型为“所有文件”)。 3.从“开始”→程序→附件→命令提示符,进入DOS命令界面。 4. 使用CD命令,进入新文件夹,例如:P1,命令为:CD C:\P1 5. 执行MASM <文件名>,对源程序进行编译。 6. 执行LINK.EXE <文件名>,连接生成执行程序。例如:LINK A1 7. 执行生成的程序,记录屏幕响应的情况。例如:A1 可以不带扩展名EXE。程序运行正常的话,应该要显示字符串"Hello World!"。 实验结果 程序运行之后,屏幕上显示字符串“Hello World”。 闲来无聊,想重新学习一下汇编,第一个helloworld,想起绝影的一句话"你们学高级语言,但是高级语言会变,我学低级语言,学了永远也不会变!" - -b stack segment stack ; 定义堆栈段 db 100 dup(?) ;堆栈段长100字节, 这里db就是字节的意思,如果是用dw就是字,100 dup(?) 中的dup是重复的意思,这句话是重复100遍,一遍定义一个字节,每个字节里全填0 stack ends ; 堆栈段结束 data segment ;数据段 szHello db 'hello,world',0dh,0ah,'$' ;定义szHello , 0dh,0ah分别是回车键,换行键的ASCII码, '$'是DOS功能调用INT 21H中9号功能要求的要显示字符串的结束标志,写成szHello db

相关文档