数据转换程序就是为数据转换而设计的程序。数据转换程序不仅可作输入排序使用,而且还有打印、复制功能,具有标准例行程的功能。这种程序也称实用程序(Utility Program)。它包括在计算机操作系统中。
技术简介
数据类型转换是数据输入输出过程中经常遇到的问题,输入时,计算机系统要把用户从键盘上输入的字符串转变成相应的数值,并存储在内存中;输出时,要把计算机内部存储的二进制数据形式转换成相应的十进制字符串,然后再输出。
在高级语言编程环境中,程序员能用各种输入输出语句,按一定的格式进行交互式操作,很少或根本不关心输入输出是如何实现的。有的程序员甚至认为其输入的就是十进制数值,输出数据也就是把内存中存储的数据直接输出出来。其实,输入输出过程并不是如此简单,计算机系统要进行复杂而又细致的数据类型转换和格式化等工作。数据转换程序就是为数据转换而设计的程序。
顺序
文卷是按物理顺序存贮(进行顺序组织)的系列逻辑记录的文卷,因此有时称为PS文卷(Physical Sequen cial File),顺序文卷是按记录中键项的号码顺序(升序或降序)来记录的文卷组织。存放这种文卷的辅助存贮器可以是磁带,也可以是磁盘。由于其组织方法不同,只进行记录的取出,不论在磁带或磁盘上,其方法基本上是一样的。但是,如果要进行记录的更新或刚除,那么由于设备特性的不同,必将影响到处理方法的不同。
当文卷的记录很少时,可以简单地按键项的升序(或降序)事先排序,然后输入。然而,与记录很多时、靠人工来排序就很费时间,而且还容易出错。因此,就不要拘于键的顺序,而是把记录集中起来的顺序,作为一个暂时的顺序文卷先写到辅助存贮器中。为这种目的而建立起来的文卷称为暂时文卷(Temporary File)。这时,如果使用数据转换程序(DataConversion Program)来排序,则更方便。数据转换程序不仅可作输入排序使用,而且还有打印、复制功能,具有标准例行程的功能。这种程序也称实用程序(Utility Program)。它包括在计算机操作系统中。
数据转换程序设计
在
单片机应用系统中,数据的输入输出常采用十进制数,直观方便;内部运算时常使用二进制数,运算简便、存储量小。程序中,经常使用数制转换子程序。以将某8位二进制数转换为BCD码程序为例进行解释。
设8位二进制数已在A中,转换后存于片内RAM的20H、2IH单元。程序如下:
ORG 3000H
MOV B, #100
DIV AB ;该8位二进制数除100,在A中得商,也即转换为
;BCD码后的百位数
MOV R0, #21H ;R0指向21H单元
MOV@R0, A ;百位数存入片内RAM的21H单元
DEC R0 ;调整R0指向20H单元
MOV A, #10
END
加密中的数据转换程序
(1)12OSP:在解密后将数字数据转换为字符串
输入:要转换的非负整数X
X转换后字符串的长度 t 字节
输出:Z为X转换后输出长度为 t 的的字符串,若过程失败,则会输出“integer toolong”
执行步骤:
1.假使,则输出“integer toolong”并停止;
2.将整数X转换为以256为基地的表示式:
其中 (当 时,高位部分可能会有几个字节为零)。
3.令 , 。输出字符串 。
(2)OS21P:在加密前将字符串转换为数字数据
输入:要转换的字符串Z
输出:相对于Z的整数X
执行步骤:
1.将Z一由高位至低位分成 t 字节,分别是 ,并令 。
2.令。
3.输出X。
数据转换程序运作方式
接口程序定期实时地传递系统之间的数据,而数据转换程序只是一次性地运行。数据转换程序的用途是从要废止的系统(通常用新的COTS来取代)中取数据,为输人新系统做好准备。与系统开发中所有功能一样,数据转换程序需要明确定义的规格说明和测试计划。所遵循的步骤类似于瀑布SDLC中采用的步骤。
并非新系统需要的所有数据都以电子格式存在。很可能已有数据的格式不容易转换,比方主要将任意格式的地址转换为分开的街道、城市,州字段就很不容易。在这种情况下,数据转换需要人工转换过程。为确保一致,应该编写这些过程并建立质量保证过程。
数据转换
数据转换有两个含义,其一是指将数据从一种表示形式转变为另一种表示形式的过程;其二是指将一种记录媒体上的数据转换到另一种记录媒体上去的过程。
在一个颇具规模的信息处理系统中,常常涉及到源于不同地点,不同格式存储并隶属于不同数据系统的数据信息,这极大的妨碍了数据的集中处理,也影响系统的正常运行。
在普通绑定中,从源到目标的信息在传递过程中没有任何变化。这看起来是符合逻辑的,但是我们并不总希望出现这种行为。通常,数据源使用的是低级的表达方式,我们可能不希望直接在用户界面中使用这种低级的表达方式。这就需要有一种方法能将这些数值转换为恰当的形式,数据转换程序就有此功能。