热门搜索 :
考研考公
您的当前位置:首页正文

2014_汇编第2次上机题

来源:伴沃教育


第二次上机题

一、目的

1. 掌握基本的程序设计方法;

2. 掌握较大规模的程序调试方法; 3. 熟悉双重循环程序设计的方法; 4.熟悉常用的机器指令

5. 熟悉串输入、串输出、字符输入的系统功能调用方法; 6. 掌握子程序设计的方法;

7、掌握中断矢量表的有关概念

由于程序会比较长,请大家务必提前就做好准备工作!按题后的“说明”有序的开展设计和编程工作。

二、题目

1、数串转换

设 BUF DW 123, 0, -100, -50, +300

以十进制形式依次输出BUF中的各个数。(对于负数,要输出负号) 要求: “数值数据到串的转换”用子程序实现。该子程序只实现一个数

值数据的转换成串的功能。

要有适当的注释,入口参数,出口参数,寄存器分配,算法思想等。

2、排序及数串转换

对题1,BUF中的5个数按从大到小顺序排序,然后以十进制形式从大到

小输出。

要求:“排序”使用子程序实现; 其他要求同题1。

3、用三种方式获取中断类型码10H对应的中断处理程序的入口地址。

① 直接运行调试工具(TD.EXE),观察中断矢量表中的信息;

② 编写程序,用 DOS系统功能调用方式获取,观察相应的出口参数与①

看到的结果是否相同 (参考:P329,35H号功能调用,TD观看取出的入口地址即可)。

③ 编写程序,直接读取相应内存单元(即中断矢量表中相应项的信息),

观察读到的数据与 ① 看到的结果是否相同 (使用TD观看即可)。

4、串数转换、排序、数串转换 【选做题】

输入给定个数的数字串,对它们从大到小进行排序并输出。 运行示例,输入5个数字串,排序后输出。 Please input 5 numbers: 123↙

0↙ -100↙ -50↙ +300↙ Sort Result:

300 123 0 -50 -100

要求:

(1) “数字字符串到数值的转换”用子程序实现。要求该子程序只实现一个数字字符串的转换;

(2) “排序”使用子程序实现;

(3) “数值数据到串的转换”用子程序实现

(4) 在子程序之前,一定要有子程序的功能说明,入口参数及出口参数说明;子程序中寄存器、存储单元的分配情况

指导:

(1) 写下必要的设计文档可以帮组我们理清思路,减少写程序时的错误; (2) 同学们可以相互讨论算法思想,理清思路;

(3) 分模块写,分模块调,这样更容易确定错误的位置,增强信心; 例如,在运行完排序程序段后,设置断点,观察数据区中的排序结果是否正确。

(4) 在纸上先写出程序,然后检查一遍,更容易发现错误。

5、串分割、串数转换、排序、数串转换 【选做题】

对题3进行一点功能修改。

(1) 在一行上输入以一个或者多个空格作为分隔符的数字串;例如 Please input numbers:

123 0 -100 -50 +300 ↙

(2) 对输入的数串进行排序,并输出排序结果。输出时,用户可以指定以十进制,还是十六进制的形式输出。

例如,用户选择用十六进制,还是十进制的输出; Output Format (1: decimal; 2 :hex) : 1↙

300 123 0 -50 -100

因篇幅问题不能全部显示,请点此查看更多更全内容

Top