自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 如何用c语言优雅的实现双向链表

本文介绍了如何在C语言中实现双向链表,并探讨了一种更灵活的方法——使用宏定义来实现双向链表的模板方法。首先,展示了传统的C语言实现方式,通过定义包含数据和前后指针的node_t结构体,并实现创建、销毁、查找、插入等基础链表操作函数。接着,提出了使用宏定义实现双向链表模板方法的方案,列举了一系列宏定义,如链表的初始化、节点添加、按索引添加节点等操作。同时,还提供了删除节点、按索引删除节点、查询节点是否存在、替换节点、获取链表长度等宏定义。

2024-04-17 14:34:05 406

原创 如何用c语言优雅的实现单向链表

本文主要介绍了在C语言中利用预编译指令(宏定义)实现链表操作的通用方法,以解决因数据结构变化而需频繁修改链表操作函数的问题。通过#define宏定义,构建了一系列链表模板方法,包括链表初始化、添加节点、按索引添加/删除节点、删除指定节点、替换节点、查询节点位置以及遍历链表等功能。文中演示了一个基于自定义数据结构struct int32_list的链表操作实例

2024-04-15 22:25:52 477

原创 从零开始手搓cpu:ALU加法器的搭建

在计算机系统中,ALU(Arithmetic Logic Unit)是中央处理器的主要组成部分,它代表算术逻辑单元,执行算术和逻辑运算。它能够执行所有与算术和逻辑运算相关的过程,例如加法、减法和移位运算,包括布尔比较(XOR、OR、AND 和 NOT 运算)。以单位元的加法器来说,有两种基本的类型:半加器和全加器,半加器有两个输入和两个输出,输入可以标识为 A、B 或 X、Y,输出通常标识为合 S 和进制 C。半加器有两个二进制的输入,其将输入的值相加,并输出结果到和(Sum)和进制(Carry)。

2024-03-05 11:39:10 400

原创 从零开始手搓cpu :逻辑门的搭建

逻辑门(Logic Gates)是在集成电路(Integrated Circuit)上的基本组件。逻辑门又称“数字逻辑电路基本单元”。执行“或”、“与”、“非”、“或非”、“与非”等逻辑运算的电路。任何复杂的逻辑电路都可由这些逻辑门组成。常见的逻辑门包括“与”门,“或”门,“非”门,“异或”(也称:互斥或)等等。逻辑门可以组合使用实现更为复杂的逻辑运算。或门(英文:Or gate)又称或电路。如果几个条件中,只要有一个条件得到满足,某事件就会发生,这种关系叫做“或”逻辑关系。

2024-03-05 10:54:22 452

原创 hidl开发实践记录

hidl文件后缀为.hal,语法借鉴了C语言和Java语言,相对来说比较简单。/***/表示文档注释。此样式只能应用于类型、方法、字段和枚举值声明。/**/表示多行注释。//表示注释一直持续到行尾。除//之外,换行符与任何其他空格一样。文件第一行非注释语句为package包名@版本;interface声明接口,不含显式extends声明的接口会从[email protected](类似于Java中的java.lang.Object)隐式扩展。......

2022-07-22 23:34:48 1507 1

原创 计算机发展史-序章

其电源电路元器件是在一件几平方厘米的处理芯片上集成了十几个到几十个电子元器件,使计算机的体积和耗电量显著降低,处理速度、存储量、可靠性由很大的提升,拥有电脑操作系统,机型多元化、通用化,并和通信技术融合,使计算机运用很多科技进步行业。回顾往事,发现对计算机的发展和历史了解可谓知之甚少,因此突发奇想,从计算机起点出发,了解计算机的诞生与发展,穿越时间世界的长河回归那段惊心动魄的历史。史前计算机时代这代计算机主要由杠杆、齿轮等机械部件组成,常见的有加法器和机械计数器,它们使用齿轮的转动来增加显示的输出。...

2022-07-16 17:33:11 275

原创 Linux 多线程编程,使用c语言简单实现一个类似android handler线程切换机制

最近开始用c写程序,作为一个一直从事Android应用开发的程序猿,这对我来说是一个困难的事情,很多编程习惯和以前有很大不同,特别是在面对多线程开发的时候。对于已经习惯使用Android Handler机制的我来说,这简直是噩梦般的存在,为此特地实现了一个类似Handler机制的工具,以方便多线程开发使用。一、使用系统函数简介 pthread_create() : 创建线程 在Unix、Linux、Mac OS X等操作系统中使用pthread_create()函数进行线程创...

2021-06-15 23:36:31 422 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除