教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 政务民生 >

微机前四章答案(楼顺天版)(10)

来源:网络收集 时间:2026-07-18
导读: START 初始化 E 调用子程序MENU 设置光标位置(41,10) 带回显的控制台输入 (AL) ← 输入字符 Y (AL) ‘5’ N 将跳转表TABLE的偏移地址送入(BX) (AL) ← (AL) – ‘1’ (AL) ← (AL) * 2 AL按符号扩展成AX (BX) ←

START 初始化 E 调用子程序MENU 设置光标位置(41,10) 带回显的控制台输入 (AL) ← 输入字符 Y (AL) < ‘1’ N (AL) > ‘5’ N 将跳转表TABLE的偏移地址送入(BX) (AL) ← (AL) – ‘1’ (AL) ← (AL) * 2 AL按符号扩展成AX (BX) ← TABLE (BX) ← (BX) + (AX) Y N=1 A B N=2 N=5 C N=3 D N=4 END 图3-1 主程序流程框图

- 45 -

A 调用子程序CHGLTR 带回显的控制台输入 (AL) ← 输入字符 N B 调用子程序MAXLTR 带回显的控制台输入 (AL) ← 输入字符 N (AL) = ESC ? Y E C 调用子程序SORTNUM 带回显的控制台输入 (AL) ← 输入字符 (AL) = ESC ? Y E D 调用子程序TIMCHK 带回显的控制台输入 (AL) ← 输入字符 (AL) = ESC ? Y E N (AL) = ESC ? Y E N 图3-1(续) 主程序流程框图

※子程序MENU的编程思路:

设置显示器显示方式为80*25彩色文本方式,清屏。逐行设置光标位置,使提示文档左对齐整体居中。输出1-5的提示文档,再输出输入N的提示。其流程框图见图3-2。

START 初始化 清屏 设置光标位置(5,5) 显示提示字符串STRING1 设置光标位置(5,6) 显示提示字符串STRING2 M 图3-2 子程序MENU流程框图

- 46 -

M 设置光标位置(5,7) 显示提示字符串STRING3 设置光标位置(5,8) 显示提示字符串STRING4 N N 设置光标位置(5,9) 显示提示字符串STRING5 设置光标位置(5,10) 显示提示字符串子程序MENU返回

※子程序CHGLTR的编程思路: 设置显示器显示方式为80*25彩色文本方式,清屏。设置光标位置,使提示文档左对齐整体居中。输出输入字符串提示文档,读取输入字符串并将其放入KEYBUF。在输入字符串尾加结束标志$,输出输入字符串。从前往后,依次取字符串中的每个字符,若其为小写字母,则将其ASCII码减去20H。输出变换后的字符串。最后输出说明文档。 其流程框图见图3-3。

START 初始化 清屏 设置光标位置(5,5) 显示提示字符串IN_STR 设置光标位置(5,6) KEYBUF ← 输入字符串 (AL) ← 输入字符串长度 AL按符号扩展成AX (CX) ← (AX) 在字符串尾加结束标志’$’ 设置光标位置(5,7) 显示提示字符串PRESTR 显示输入的字符串 (BX) ← KEYBUF + 2 ((BX)) ≥ ‘a’ Y ((BX)) ← ((BX)) ∧ 0DFH N (BX) ← (BX) + 1 N (CX) ← (CX) – 1 (CX) = 0 ? Y 设置光标位置(5,8) 显示提示字符串NEWSTR 显示变换后的字符串 设置光标位置(5,9) 显示提示字符串HINSTR 子程序CHGLTR返回 图3-3 子程序CHGLTR流程框图

- 47 -

※子程序MAXLTR的编程思路: 设置显示器显示方式为80*25彩色文本方式,清屏。设置光标位置,使提示文档左对齐整体居中。输出输入字符串提示文档,读取输入字符串并将其放入KEYBUF。在输入字符串尾加结束标志$,输出输入字符串。预设字符串中最大值为0。从前往后,依次取字符串中的每个字符,若其大于当前最大值,则进行替换,即可得到字符串中的最大值,并输出。最后输出说明文档。 其流程框图见图3-4。

START 初始化 清屏 设置光标位置(5,5) 显示提示字符串IN_STR 设置光标位置(5,6) KEYBUF ← 输入字符串 (AL) ← 输入字符串长度 AL按符号扩展成AX (CX) ← (AX) 在字符串尾加结束标志’$’ 设置光标位置(5,7) 显示提示字符串OUT_STR 显示输入的字符串 设置光标位置(5,8) 显示提示字符串MAXCHR (DL) ← 0 (BX) ← KEYBUF + 2 N ((BX)) > (DL) Y (DL) ← ((BX)) (BX) ← (BX) + 1 N (CX) ← (CX) – 1 (CX) = 0 ? Y 显示字符(DL) 设置光标位置(5,9) 显示提示字符串HINSTR 子程序MAXLTR返回 图3-4 子程序MAXLTR流程框图

- 48 -

※子程序SORTNUM的编程思路: 设置显示器显示方式为80*25彩色文本方式,清屏。设置光标位置,使提示文档左对齐整体居中。输出输入数据组提示文档,读取输入数据组字符串并将其放入KEYBUF。调用子程序CIN_INT,将字符串转换成数据串。判断数据串是否有错误或者为空,若是,则重新输入数据组。调用子程序MPSORT,采用冒泡法对数据串进行排序。再调用子程序INT_OUT,输出排序后的数据组。最后输出说明文档。

其流程框图见图3-5。

START 初始化 清屏 设置光标位置(5,5) 显示提示字符串IN_NUM 设置光标位置(5,6) KEYBUF ← 输入字符串 调用子程序CIN_INT Y (AL) = 0 ? N 设置光标位置(5,7) 显示提示字符串OUT_NUM 设置光标位置(5,8) 调用子程序MPSORT 调用子程序INT_OUT 设置光标位置(5,9) 显示提示字符串HINSTR 子程序SORTNUM返回 图3-5 子程序SORTNUM流程框图

※子程序CIN_INT的编程思路:

入口参数为:无;出口参数为:AL(有无错误标志,0为有,1为无)。从前往后,依次取字符串中的每个字符进行判断。CH表示数据组数据个数,AL表示当前数据x,DL作为有无数据标志。若当前字符为空格,则转到ADDNUM,判断DL是否为1,若为1,则CH增1,调用子程序ADDNEW,增加新数x,然后DL、AL清零;否则判断当前字符c是否在‘0’-‘9’之间,若不是,则判错,将AL置0,子程序CIN_INT返回;否则,DL置1,x=x*10+c-‘0’,判断x是否超过255,若是,则判错,将AL置0,子程序CIN_INT返回;否则,对下一个字符进行操作。字符串判断结束后,若DL为1,则有新数x未加至数据组,调用子程序ADDNEW,增加新数x。将数据组个数CH放入NUMBUF,将AL置1。

其流程框图见图3-6。

※子程序ADDNEW的编程思路:

入口参数为:CH(数据组数据个数)、AL(当前数据x);出口参数为:无。取出数据组NUMBUF的首地址,加上数据组数据个数,即为当前数据x的地址,将x放入该地址。

- 49 -

…… 此处隐藏:1242字,全部文档内容请下载后查看。喜欢就下载吧 ……
微机前四章答案(楼顺天版)(10).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/447842.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)