首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言:十进制、BCD码互换

目录 1、复杂版 2、简易版 ---- 最近写单片机 RTC 日期、时间配置,需要实现十进制、BCD码互换,将示例Demo分享给各位朋友: BCD是指用二进制来表示十进制数的编码,即:4位二进制来表示一位十进制数...一个四位的BCD码不能够表达十进制的两位数,因此当数字大于九时,我们需要用八位BCD码来表示。高位只需要逢九进一即可。...码转换为十进制,代码如下所示: int bcd_decimal_code( int bcd) { int sum = 0, c = 1; // sum返回十进制,c每次翻10倍 for(int...i = 1; bcd > 0; i++) { if( i >= 2) { c*=10; } sum += (bcd%16) * c; bcd /= 16; // 除以16...{ return (bcd + (bcd/10) * 6); } BCD码转换为十进制,代码如下所示: int decimal_bcd_code(int decimal) { return

2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    哈夫曼实现文件压缩压缩c语言

    写一个对文件进行压缩和解压缩的程序,功能如下: ① 可以对纯英文文档实现压缩和解压; ② 较好的界面程序运行的说明。...当利用霍夫曼编码对一篇英文进行压缩时,e极有可能用一个比特来表示,而z则可能花去25个比特(不是26)。普通的表示方法时,每个英文字母均占用一个字节,即8个比特。...文件压缩与解压 姓名: 范天祚 1 程序说明 1.1数据结构 哈夫曼树 1.2函数功能说明 printfPercent界面 compress()读取文件内容并加以压缩,将压缩内容写入另一个文档 uncompress...()解压缩文件,并将解压后的内容写入新文件 1.3 程序编写的思路及流程 压缩:统计字符出现次数、将节点按出现次数排序、构造哈夫曼树、设置字符编码、读文件字符、按设置好的编码替换字符、写入存储文件 解压...{ if (buf[i] == '1') c = (c << 1) | 1; else c = c << 1;

    2.4K20

    keil编程C语言

    单片机需要用到C语言作为程序来对它发出指令,而单片机需要C语言的hex类型文件作为传输,而KEIL 是众多单片机应用开发软件中优秀的软件之一, 且能够生成hex文件,它支持众多不同公司的 MCS51 架构的芯片...,它集编辑,编译,仿真等于一体,同时还支持,PLM,汇编和C 语言的程序设计。...接下来我们可以来尝试一下keil来编程C语言. 1、首先是打开keil软件,打开后显示的界面如下。...4、接下来会出现如下图所示画面,是跳入C函数之前执行的一段汇编代码,不加就用默认的启动代码,加了你没修改这段代码,那还是相当于默认的启动代码,这时加和没加都一样。...6、点击保存按钮后出现下第一张图所示对话框,在箭头所指的地方输入源文件名称加后缀名(如果你是C语言编写程序后缀名为*.c;如果你是用汇编语言编写程序则后缀名为*.asm)并点击确认保存。

    15K30

    C语言实例_数据压缩与解压

    一、压缩与解压介绍 数据压缩是通过一系列的算法和技术将原始数据转换为更紧凑的表示形式,以减少数据占用的存储空间。数据解压缩则是将压缩后的数据恢复到原始的表示形式。...尤其在低带宽、高延迟的网络环境中,压缩可以显著改善传输性能。 (3)文件压缩压缩工具如ZIP、RAR等常用于对文件进行打包和压缩,以减小文件的大小,便于存储和传输。...二、ZIP格式介绍 ZIP是一种常见的文件压缩格式,它使用DEFLATE算法来进行数据压缩。 下面是ZIP压缩的基本原理: (1)文件分块:ZIP压缩将要压缩的文件按照一定大小的块进行划分。...三、C语言实现压缩和解压算法 3.1 代码框架 下面是使用C语言实现压缩和解压的代码框架(下一章再实现完整的算法): #include #include void...下面使用C语言自行实现的LZ77压缩和解压算法完成压缩和解压: #include #include #include #define MAX_WINDOW_SIZE

    59240

    C语言学习教程,C语言编写扫雷游戏

    本文实例为大家分享了C语言实现扫雷游戏及其优化的具体代码,供大家参考,具体内容如下 关于扫雷优化 1.核心思想:使用两个二维数组进行设计,一个用于显示,一个用于后台雷的布置。...3.界面布局仍需要进行优化 虽然说C语言开发发展前景好,但易学难精。由于入门容易这也导致了市场上人员泛滥、人才稀缺的局面产生。但是在互联网越来越强烈的竞争下,这样的人也最终会被市场淘汰。...对于想要从事C语言行业的小伙伴来说,一定要清楚自己未来的职业规划和就业方向。 扫雷游戏代码 相关运行样例 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多关注支持。

    7.7K20

    Rust解决C语言的隐患

    题记:相对于其它语言,使用Rust开发更能避免低级错误。 简介 对笔者而言,Rust越越顺手,接触越多也就越不能抵抗它的魅力,也因此才有了本文的诞生——希望大家能了解到这种语言的妙处。...对大众来说,Rust最大的卖点在于它能确保代码的安全性,这是Rust相对于C语言的一个极大优势,也是令Rust与众不同的关键所在,这也是本文的重点。...本文详细列举了样例,阐明Rust是如何完全地消弭那些继承自C语言的诸多隐患。...隐患 空指针引用(NULL Dereference) 声名狼藉的程序分段错误(Segmentation Fault)是C语言的常见问题,而通常NULL dereferences是第一大诱因。...与C语言不同,在返回reference时,Rust的编译器会确保相关内容可有效调用,也就是说,编译器会核实返回的reference有效。即Rust的reference总是指向有效内存。

    2.1K50

    c语言实现文件操作

    文件的打开和关闭 我们下面两个函数实现文件的打开和关闭 对于fopen来说,第一个参数传入一个文件的名字,第二个为打开的方式,返回值为一个文件指针,如果打开失败就返会NULL fclose里的参数为传入一个文件指针...我们来看具体的例子 int main() { FILE* pf = fopen("text.txt", "r");//pf来接收 if (pf == NULL) { perror("fopen...= 'a'; c <= 'z'; c++) { fputc(c, pf); }*/ char a1 = fgetc(pf); printf("%c\n", a1); char a2= fgetc...,讲函数返回值接受并以字符形式打印,读取是按照顺序依次往下读取,根据读取到文件末尾返回值为EOF,可以一个循环来实现对文件中所有字符进行遍历。...= fgetc(pf); printf("%c\n", c); fseek(pf, 3, SEEK_CUR);//光标从当前位置偏移量为3 c = fgetc(pf); printf("%c\n

    10810
    领券