实验六 子程序和宏汇编的程序设计
一. 实验目的:
1. 掌握子程序设计和调试方法
2. 掌握多模块汇编程序设计方法
3. 掌握宏汇编的程序设计方法
二. 实验要求:
1. 掌握子程序设计方法,包括:
A 子程序间参数简单传递方法
B 利用堆栈传递方法
C 子程序的递归
2. 掌握多模块汇编程序的设计、调试,包括:
A PUBLIC 和 EXTRN 伪指令的使用方法
B 多模块的链接
3. 掌握宏汇编的程序设计方法
三. 实验仪器:
PC 机一台
四. 实验内容:
6.1 将一串 ASCII 码中小写英文字母转换成大写,
该串以 "$" 结束,要求判别和转换用子程序实现。
6.2 将一串十六进制数转换成对应的
ASCII 码, 其中转换过程用子程序实现。
6.3 将
DISPLAY 单元 ( WORD ) 中的数据用二进制的方式显示, 其中子程序完成将 AX 中数据显示的功能。
6.4 主程序读入一串字符后,
利用堆栈方式将该字符串的段址,偏移及串长传给子程序, 在子程序中加以显示,
返回主程序后显示 'OK'。
6.5 利用堆栈方法实现
N! 的计算。
6.6 A模块中有两组无符号数,
B 模块是加法程序, 在 A 模块中两次调用 B 模块实现加法。其参数用 PUBLIC 和 EXTRN 方式进行传递。
6.7 利用数据段以
COMMAND 方式完成第 6 题的要求。
6.8 编写一可实现左右移多位的宏定义,并利用该宏定义实现 A1 左移 3 位,
A2 右移 5 位的程序。同时, 利用显示子程序将移位前后的数据加以显示。
6.9 编写用查表法求 1 ~ 15 平方的程序, 其中平方表用宏定义实现。 数据由键盘输入
( 00 推出 )结果在屏幕上显示。
6.10 自编题。