首页 理论教育 「Keil编程实验:转换二进制数、移动地址、排序随机数」

「Keil编程实验:转换二进制数、移动地址、排序随机数」

时间:2023-06-25 理论教育 版权反馈
【摘要】:在熟悉编程软件Keil的基础上,编写以下几个程序。首先进入Keil开发环境,输入相应的程序,然后编译、运行,查看结果是否正确。将一个给定的二进制数转换成十进制。本程序涉及计算机中数值的各种表达方法,这是计算机科学的基础内容。本程序主要是让学生了解十六进制数值和ASCII码的区别。本程序是给出起始地址,用地址加1的方法移动块。请学生编写程序,完成此操作。给出一组随机数,将此组数据有序排列。有序的数列更有利于查找。

「Keil编程实验:转换二进制数、移动地址、排序随机数」

在熟悉编程软件Keil的基础上,编写以下几个程序。

首先进入Keil开发环境,输入相应的程序,然后编译、运行,查看结果是否正确。

(1)指定存储器中某数据块的起始地址长度,要求能将其内容置1。

本程序帮助学生了解单片机是如何读写存储器的,同时也可以使学生了解单片机编程、调试的方法,以及将存储器块的内容置成某固定值(如全填充为#0FFH)的方法。请学生编写程序,完成此操作。

(2)将一个给定的二进制数转换成十进制(BCD码)。

本程序涉及计算机中数值的各种表达方法,这是计算机科学的基础内容。掌握各种数制之间的转换是一种基本功,有兴趣的学生可以试试将BCD码转换成二进制码。请学生编写程序,完成此操作。

(3)给出一个十六进制数,将其转换成ASCII码值。

本程序主要是让学生了解十六进制数值和ASCII码的区别。利用查表功能可快速地进行数值转换,进一步了解数值的各种表达方式。请学生编写程序,完成此操作。(www.xing528.com)

(4)将指定源地址和长度的存储块移到指定目标位置。

块移动是计算机常用的操作之一,多用于大量的数据复制和图像操作。本程序是给出起始地址,用地址加1的方法移动块。请学生编写程序,完成此操作。

请思考给出块结束地址,用地址减1的方法移动块的算法。另外,若源地址和目标块地址有重叠,该如何完成移动?

(5)在多分支结构的程序中,能够按调用号执行相应的功能,完成指定操作。

多分支结构是程序中常见的结构,若给出调用号来调用子程序,一般用查表方法,查到子程序的地址,转到相应子程序。请学生编写程序,完成此操作。

(6)给出一组随机数,将此组数据有序排列。

有序的数列更有利于查找。本程序用的是冒泡排序法,算法是将一个数与后面的数相比较,如果比后面的数大,则交换。如此将所有的数比较一遍后,最大的数就会在数列的最后面。再进行下一轮比较,找出第二大数据,直到全部数据有序。请学生编写程序,完成此操作。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈