一、本程序完成功能要求: 完成两个压缩的8位多字节无符号BCD数相加的程序段。要求提供调试通过的源代码、可执行程序和编程小结readme.txt文件。 两个操作数可以由键盘输入。输出要求:在屏幕上显示出参与运算的两个加数和结果和。 二、使用说明: 点击136_ZHJ.exe文件,然后根据提示输入第一个数字,按回车;屏幕上会提示输入第二个数字,根据提示输入第二个数字, 按回车后屏幕会显示出计算结果。 三、程序结构说明: 共有如下五个子程序: KDISPLAY、 DISPLAY、 BCDADD、 BConvert、 AConvert、 Expand。 其功能分别为: KDISPLAY:显示字符,其中BP中存放要显示的字符的地址,CX中存放要显示的字符个数 DISPLAY:用来显示计算得到的结果 BConvert:将ASCII码字符转换成压缩BCD码 AConvert:将BCD码转换为ASCII字符 BCDADD:将读入后转换为压缩BCD格式,然后相加。
上传时间: 2013-12-21
上传用户:qweqweqwe
C51语音播放源码 将语音按占空比放出。原语音为8位8KHz,则125us一个字节,现时钟主频近2MHz,周期为0.5us,这样一个字节占250个周期,而字节8位为256,可以近似为256个周期,实验应放在定时器中产生。 如果倍频,每个字节就可以产生两个波形,音质应更好
上传时间: 2013-12-31
上传用户:zjf3110
一个通用的24C01-24C256共9种EEPROM的字节读写操作程序, 此程序有五个入口条件,分别为读写数据缓冲区指针, 进行读写的字节数,EEPROM首址,EEPROM控制字节, 以及EEPROM类型。此程序结构性良好,具有极好的容错性,程序机器码也不多:
上传时间: 2013-12-21
上传用户:pinksun9
根据曼彻斯***的编码原则(参见本刊2001年第一期《一种采用曼码调制的非接触IC卡读写程序编制》),非接触ID卡采用上升沿对应着位数据“0”,下降沿对应着位数据“1”,微控制器通过检测U2270B输出数据位的跳变来实现对曼彻斯***的译码。在现实工作中,数据信号会受到调制、解调、噪声各种效应的影响,其上升沿和下降沿存在抖动,可采用键盘消抖的办法来消除抖动的影响。根据非接触ID卡64位数据循环发送以及其数据绪构特点,即数据流中第64位为“0”,第1位至第9位为“1”。据此,将“0111111111”作为读数据的起始标识,如图2所示。在确定了数据起始标识后,采用延时大于0.5T采样数据位的方法,如图3所示,来避开曼彻斯***编码中的空跳对数据译码造成的影响,简化了译码程序。 通过实验得到:480μs≤1T≤520μs,220μs≤0.5T≤280μs,由此取Tnext=300μs。为了便于对读出数据进行奇校验,读出数据每5位作为一个字节。因此确定起始标识和读取数据对时钟有严格要求,所以寻找起始标识和读取数据部分程序采用汇编语言编写。数据读以后,根据前面所提到的非接触ID卡的数据结构,通过比较奇校验算法与读出数据中的奇校验位来验证出数据的正确性。
上传时间: 2016-10-14
上传用户:xhz1993
计算达拉斯8位校验码的工具软件,内部使用死循环,要退出时按Ctrl+C,过程中要归零可输入与上次结果相同的数,DOS窗口,输入的数为单字节的十六进制数即00-FF。
上传时间: 2013-12-24
上传用户:stvnash
62256在单片机上的应用,C语言源码,Keil uVision3工程文件,附原理图及说明学习文档 62256简介: 62系列是最常用的单片机系统扩展RAM元器件,其类型有6216、6232、6264、62128、62256或62512等多种,62后面的数字表示此元器件中可以存储的位(单位:千bit),我们通常的说法是将此值除以8,比如62256将256除以8,我们一般称之为32K的RAM。 如果学习过二进制就可以知道,区分两个字节需要一根地址线就可以:0或者1;而区分四个字节需要2根地址线;区分八个字节需要三根地址线…..以此类推,我们可以计算出要区分32K的RAM区,需要15根地址线,也就是器件上面的A0-A14管脚用于确定唯一的一个字节内容。 我们现在学习的51单片机是8位的,所以必须用两个IO口来联接这个RAM器件,通常我们用P0(低字节)和P2(高字节)两个端口来确定此器件的地址,而P0口是51单片机标准的总线口,是地址线和数据线复用的,所以与62256联接时需要加一片锁存器来锁存地址。即先将地址送到锁存器(通常用74HC373)中,然后P0口空闲下来后开始接收或发送数据至62256。
上传时间: 2017-01-27
上传用户:asdkin
嵌入式FAT16文件系统源码下载1) 兼容FAT16文件系统,长文件名,最大路径长度260个字节,符合Microsoft Longfilename specification。 2) 可移植于各种平台,只需编写sector驱动驱动,共计两个函数:1)read_flash_sector() 2)write_flash_sector()。 3) 文件缓冲功能:1)读文件时,读位置在文件缓冲区内,则可直接读文件缓冲区,不需要读物理磁盘;文件缓冲区大小可使用编译宏EnableFileBuf,TotalFileBUFsQTYeachFCB,FileBUFSize来控制。 4) 可同时打开多个文件;最大打开文件数可使用编译宏MaximumFCB设定,MaximumFCB最大值限定为254。 5) 文件保护功能:文件可同时打开多个FCB,而只有其中一个FCB可以得到文件RD/WR权限。该功能完全由文件系统代码来完成,上层应用无需编写额外代码。 6) 所有编译宏存放于文件fat_cfg.h。
上传时间: 2017-02-21
上传用户:515414293
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。本程序是c语言版的base64加密解密源码!
上传时间: 2014-06-19
上传用户:shizhanincc
1数据传送与多字节十进制加法实验 1. 数据传送实验 把数据0A0H放到地址为40H内存单元,并将数值和地址分别递增1,要求一共做十次这样的操作。 将内存空间40H-49H的数值分别传递给50H-59H的内存空间中 2. 多字节十进制加法实验 将存放在单片机内部RAM中以40H为首的3个地址单元中的一十进制数与存放在50H为首的3个地址单元中的一十进制数相加,将相加结果存放在以60H为首的地址RAM地址单元中。 2要求在8个LED数码管显示8个指定的数(例如学号)。 编程提示:数码管模块具有两个地址:片选地址和数据(段码)地址,要在某个数码管上显示1个数,需要先向片选地址上送一个数选中其中一个数码管,在向数据地址送要显示的数据的段码值。要8位同时显示,需要采用动态刷新的方式将8位数码管轮流显示。 共阳极数码管段码:C0H,F9H,A4H,B0H,99H,92H,82H,F8H,80H,90H对应0~9
上传时间: 2014-01-20
上传用户:lanjisu111
字节集与十六进制高效互转,支持反转,易语言源码
上传时间: 2021-11-04
上传用户:g3839