汇编语言实验2-汇编语言程序框架

本文为《汇编语言程序设计》配套实践。点击链接…进课程主页。

1. 实验目的

  • 理解程序在CS和IP寄存器的控制下运行的过程
  • 学会由汇编语言源程序到可执行文件的生成过程,学会用Debug运行程序
  • 学会在程序中操作栈的方法
  • 学会用loop指令编制循环程序解决简单问题
  • 学会用bx和loop指令配合访问连贯的内存空间

2. 实验内容

任务1-编制第一个汇编程序

(1)将下面的程序保存为p1.asm,将其生成可执行文件p1.exe。

assume cs:code
code segment
         mov ax,0123H
         add ax,ax

         mov ax,4c00h
         int 21h
codesg ends
end

(2)在Debug中单步执行这个程序
  在实验报告中,截图说明编辑、编译、连接、运行的各个步骤。

提示:(1)以上程序中有一处错误,请按错误程序输入,体验一下语法错误的相关提示;(2)可参考视频“0402 由源程序到程序运行”和“0403 用Debug跟踪程序的执行”

任务2-栈的操作

  先编程序:
  (1)将10000H~1000FH这段空间当作栈,初始状态栈是空的(据此设置SS、SP);
  (2)设置AX=001AH,BX=001BH;
  (3)利用栈,交换AX和BX中的数据。
  然后再编译、连接、运行程序。

提示:可参考视频“0402 由源程序到程序运行”和“0403 用Debug跟踪程序的执行”

任务3-循环程序设计(1)

  编程序计算2^10,将最后结果保存在dx中

任务4-循环程序设计(2)

  编程序,用loop指令计算从1到100的所有整数相加的和,运算结果请保存到寄存器DX中。

任务5-用[bx]和loop联合访问连续的内存单元

  编程序,向内存0:200H到0:23FH依次传送数据0~63(3FH),即0:200H中为0,0:201中为1,……依此类推

提示:请参考教材中用[bx]和loop联合访问连续的内存单元

时间: 2024-11-01 03:52:47

汇编语言实验2-汇编语言程序框架的相关文章

用汇编语言编写消息框程序

在本课中,我们将用汇编语言写一个 Windows 程序,程序运行时将弹出一个消息框并显示"Win32 assembly is great!". 理论: Windows 为编写应用程序提供了大量的资源.其中最重要的是Windows API (Application Programming Interface). Windows API是一大组功能强大的函数,它们本身驻扎在 Windows 中供人们随时调用.这些函数的大部分被包含在几个动态链接库(DLL)中,譬如:kernel32.dll

debug-王爽汇编语言实验10.3 div这一步怎么了

问题描述 王爽汇编语言实验10.3 div这一步怎么了 将数据12666以十进制的形式在屏幕的8行3列,用绿色显示出来. 我的程序是 assume cs:code,ds:data data segment db 10 dup(0) data ends code segment start: mov ax,12666 mov bx,data mov ds,bx mov si,0 call dtoc mov dh,8 mov dl,3 mov cl,2 call show_str dtoc: pus

汇编语言实验1-实验平台、理解寄存器和内存

本文为<汇编语言程序设计>配套实践.点击链接-进课程主页. 1. 实验目的 学会搭建汇编语言程序设计的软件平台 学会Debug实用程序的基本功能 对汇编指令.寄存器.内存空间产生直观的认识 2. 实验任务 任务0-搭建汇编语言实验环境 参考视频"0105 汇编语言实践环境搭建",搭建汇编语言实验环境,以便于下面的工作. 如果使用的winXP,可以不安装DOSBOX模拟器,而是用XP的MS-DOS方式运行masm文件夹中的命令. 任务1-Debug程序的使用 参考视频&quo

汇编语言 编写一个自相关程序

问题描述 汇编语言 编写一个自相关程序 求大神帮忙编写一个DSP的汇编语言的自相关程序,并给出设计思路和程序注释 解决方案 dsp用的是什么单片机,要说清楚

学习编程-用汇编语言画图,汇编语言菜鸟求大家帮忙。感激不尽!

问题描述 用汇编语言画图,汇编语言菜鸟求大家帮忙.感激不尽! 作为初学汇编语言的菜鸟,想请教一下怎么用汇编语言画6*6的矩形呢? 解决方案 IP: 机器代码 在DEBUG中U命令反汇编后的源代码 0100 B80400 MOV AX00040103 CD10 INT 10 0105 B40B MOV AH0B 0107 BB0001 MOV BX0100010A CD10 INT 10 010C B40B MOV AH0B 010E BB0000 MOV BX00000111 CD10 INT

COM应用程序框架 1.2 设计方案 试验A版

本文只介绍<COM应用程序框架>的主要设计部分,更多.更详细的文档信息请参见下 载文件包中的文档和源代码. 一.设计说明 <COM应用程序框架>是把标准的Microsoft Windows多文档处理应用程序使用COM技术 来设计.所以针对多文档处理应用程序的需求,不再多写.如果您不了解请参见MSDN或者 是其它编程基础方面的书籍. <COM应用程序框架>分为两种,一种是COM多文档应用程序框架,第二种是单文档应 用程序框架.在这里我们只介绍多文档应用程序,不介绍单文档应

Symbian程序框架研究

S60应用程序的运行依赖于大量的OS组件,例如屏幕绘图和应用程序数据持久性等,可以直接使用OS的窗口服务器或者文件服务器即可. 应用程序框架由一套核心类组成,这些类是所有应用程序框架的基础.这些类组成了所有应用程序的架构,并且它们也封装了应用程序和所需OS服务器之间的相互作用. 第一层:CBase和CActive两个基类,其中CActive也是派生于CBase,而CActive又被第二层的CConEnv派生 第二层:包含两个基本组件:AppArc和CONE.AppArc代表"应用程序架构&quo

VC应用程序框架

VC应用程序框架提供的强大功能,为我们的开发提供了极大的方便,利用它可以很轻松地生成应用程序的框架.许多常用功能,例如文档的创建,文件的打开,保存等操作的大部分代码都由应用程序框架来完成.这些操作对于开发软件的用户而言是透明的.微软设计Visual C++的初衷是尽量向用户提供尽可能简单的接口,但是,正是因为应用框架的这一透明性,使VC的运行流程显得非常神秘,当涉及这些VC已经提供的功能模块的软件开发时,用户(特别是那些刚刚接触VC的)不知道什么时候该使用什么接口函数,想改变VC的一些默认操作时

应用程序框架设计(1):SW系统简介

<应用程序框架设计>是我大学毕业时(2000年)写的毕业论文.在我给公司内部作"应用程序架构"方面的讲座时,曾经作为入门级的参考资料附上.后来不知如何就流传到Internet上,不过是不完整的版本(可尝试在Google中搜索"应用程序框架设计:SW系统").回头看这篇文字,最大的感受觉得自己的文字功底是越来越退步了:-) 由于与界面库有关,大家不妨看看. 应用程序框架设计 许式伟 2000年6月 一.摘要 随着面向对象技术的发展成熟,已经出现了许多著名的