Skip to content

北京理工大学 2013级 计算机科学与技术专业 汇编程序设计课程上机实验题目

Notifications You must be signed in to change notification settings

huyleyye/BIT-Assembly-experiment-2015

 
 

Repository files navigation

BIT-Assembly-experiment-2015

###北京理工大学2013级 2015年 计算机科学与技术专业 汇编程序设计课程上机实验题目

1. (2学时)熟悉DOS编程环境:编写一个DOS环境的汇编语言程序,要求从键盘输入一串字符,去除连续重复的字符后再显示,如:统计A的个数,并将A换成CC输出

2. (3学时)程序中自定义缓冲区AREA1,其中存放200个无序的无符号字型数据(至少有3个重复数据),编程序将其排序后送到自AREA2开始的单元中,要求传送后的数据从大到小排序,并实现查找功能,判定需要查找的数据在AREA1与AREA2中分别对应的位置,并通过查看内存验证结果的正确性。把有序的无符号字型数据换成带符号字型数据,实现以上功能。

熟悉DEBUG调试环境。使用DEBUG调试程序察看机器码,并单步执行,观察每一条指令的执行结果、 寄存器的内容、内存变量和堆栈数据的变化情况。

3. (4学时)熟悉Windows编程环境:

⑴ 编写一个Windows界面汇编程序,显示一个带Yes,No选择按钮的消息框,标题显示为:自己的姓名;正文内容显示为:学号;选择Yes的返回:“你选择的是Yes”,选择No的返回:“你选择的是No”。

(2)(编写一个Windows 32位控制台程序,要求从键盘输入5个十六进制数,输出该数所对应的二进制数中所包含“0”的个数。)

###熟悉WINDBG调试环境。使用WINDBG调试程序察看机器码,并单步执行,观察每一条指令的执行结果、 寄存器的内容、内存变量和堆栈数据的变化情况。

4. (4学时)把数组中的n个双字型元素按从大到小(从小到大)的顺序排列。增加一个交换标志,在排序完成时不再执行多余的外层循环。

熟悉WINDBG调试环境。使用WINDBG观察内存变量,并观察结果。

5. (4学时)多模块程序设计及多语言混合编程。要求:

⑴ 编写一个汇编语言递归子程序(子模块)求斐波那契数列,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n>=2,n∈N*);(输入一个数字,若该数字在数列中,则输出N,若不在数列中,输出“error”)

⑵ 编写一个计算Z=sin(2n+1)*F(n)的汇编语言主模块,其中sin(x)调用C语言的函数库、F(n)通过调用⑴中的模块实现,输入n。显示格式为:

Z=

使用调试程序观察参数传递及堆栈平衡情况。

About

北京理工大学 2013级 计算机科学与技术专业 汇编程序设计课程上机实验题目

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Assembly 100.0%