1、 - I - 摘摘 要要 计算机程序设计语言是人机交流的重要工具,在众多的程序设计语言中,汇编语言是一 种强有力的语言,它能透彻的反映,巧妙而充分地运用计算机硬件的功能及特点,便于编程 人员根据自己的需要灵活地编制高级语言能实现的无法实现的各种程序,随心所欲的控制计 算机的运行。汇编语言是计算机能提供的最快而又最有效的语言,也是能够利用计算机所有 硬件特性的唯一语言。所以,掌握好汇编语言对于我们很重要,通过本次程序设计提高我们 对汇编语言的运用能力。 今天在计算机被广泛应用的信息时代,信息本身就是财富。大量的信息用数据的形式存 放在计算机系统里。信息的传输则是通过公共信道。这些计算机系统和信道
2、是不设防的,很 脆弱的,很容易受到攻击和破坏,因而我们需要一种措施来保护我们的数据,防止被一些用 心不良的人盗取或破坏。因此,我们需要一种强有力的安全措施来保护我们的机密数据不被 盗取或破坏。数据的加密和解密从宏观上讲是很简单,很容易理解的。加密和解密的一些方 法也是很直接的,很容易掌握,可以很方便的对机密数据进行加密和解密。本程序的设计利 用了汇编语言来实现数据的加密和解密。对数据进行加密会使数据的存储更安全。解密后的 数据我们还可以重新利用。 数据加密和解密功能的实现是利用对数据的 ASCII 码进行加减运算,使它改写为另一组 数据,隐藏了原数据,使他人不能看到,从而保证了原数据的安全。程
3、序运行中每一项操作 都有提示,根据提示可选择是否继续向下运行,若选择“N” ,数据将被重新输入。而且有良 好的运行界面,设计人性化。程序运行结束后可选择退出,程序则会自动关闭窗口,不退出 则会继续运行。 在加密和解密的运行中用到了 INT 21H 指令。01H 号功能为等待等待从标准设备输入一 个字符,将该字符的 ASCII 码送给 AL,并在标准输出设备上显示该字符。02H 号功能将 DL 中的一个字符显示在标准输出设备上。 09H 号功能为在标准输出设备上显示某个字符串。 0AH 号功能为输入字符串。并且字符串以“$”为结尾。 本程序易于操作且简单,用户可以很方便的对机密数据进行加密和解密
4、。程序具有可选 择性,用户可以根据提示进行操作。运行界面简洁友好,用户可以清楚的看到数据被加密后 和解密后的状态。 关键词关键词:子程序调用;汇编语言;数据的加密解密;INT 21H 命令; - II - 目 录 摘 要. I 简易数据加密解密程序. - 1 - 一、设计题目及设计目标. - 1 - 1.1 设计题目. - 1 - 1.2 设计目标. - 1 - 二、设计原理. - 2 - 2.1 程序中的关键技术. - 2 - DOS 中断调用 - 2 - 2.2 程序流程图. - 2 - 三、设计步骤. - 8 - 四、调试记录及结果分析. - 9 - 4.1 主界面运行结果 - 9 -
5、4.2 显示加密后的数据 - 9 - 4.3 显示解密后的数据 - 10 - 4.4 退出程序 - 11 - 五、问题及解决方法. - 12 - 设计总结. - 13 - 参考文献. - 14 - 附录. - 14 - - 1 - 简易数据加密解密程序简易数据加密解密程序 一、一、设计题目及设计目标设计题目及设计目标 1.11.1 设计题目设计题目 设计数据的加密解密程序,能够对用户所输数据进行加密和解密。 1.21.2 设计目标设计目标 能够对用户所输的数据进行加密,并在加密之前能给用户选择是否要对所户是否要退出 输入的数据进行加密,在加密数据完成后,会提示用户是否要对所加密的数据进行解密,
6、是 否要对刚加密的数据进行解密,最后提示用户是否要退出程序。拥有良好简洁的操作界面和 简单明了的使用方法,功能模块图如图 1.1 所示。 图 1.1 功能模块图 数据加密解密主菜单 退 出 程 序 解 密 数 据 加 密 数 据 - 2 - 二、二、设计原理设计原理 2.12.1 程序中的关键技术程序中的关键技术 DOS 中断调用 INT 21H 指令 (1)01H 号功能 功能:等待从标准设备输入一个字符,将该字符的 ASCII 码送给 AL,并在标准输出设 备上显示该字符。 入口参数:无。 出口参数:AL 的内容为输入字符的 ASCII 码。 (2)09H 号功能: 功能:在标准输出设备上显示某个字符串。 入口参数:DX 的内容为要显示的字符串的首地址。 出口参数:无 2.22.2 程序流程图程序流程图 主程序流程图(图 2.1) 、菜单选择流程图(图 2.2) 、显示字符串流程图(图 2.3) 、输入 字符串流程图图 (2.4) 、加密程序流程图(图 2.5) 、加密过程程序流程图(图 2.6) 、解密 程序流程图(图 2.7) 、解密过程程序流程图(图 2.8