![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c语言
星星92014
这个作者很懒,什么都没留下…
展开
-
从汇编到c语言
今天我终于实现了在裸机上运行的程序从汇编到c语言,算是简单的操作系统吧,不过只是进了保护模式中断还没开。这主要是参考自linux0.11源代码,基本上与原来的代码是相同的,不过是去掉了分页,去掉了数学协处理器检查的代码。另外自己用汇编写了printk函数用于,打印字符串,同时在下次打印时能记住坐标,不会覆盖,而且当写满了自动设置坐标为0,0.在main函数中用循环调用printk10次。原创 2015-01-17 10:02:39 · 584 阅读 · 0 评论 -
内存数据对齐
1.内存访问粒度 程序员习惯性把内存当做简单的字节数组,在c语言和它之后的语言中,char *代表“a block of memory”,甚至java有byte[]的类型去代表原始内存。程序员看到的内存如下图所示:然而你的电脑处理器不会按照字节读或者写内存。相反,它访问内存是以2-,4-,8-,16-,32-字节为块。我们将处理器访问内存的大小叫做内存的访问粒度转载 2015-01-22 18:25:01 · 662 阅读 · 0 评论 -
赫夫曼编码\译码
通过赫夫曼编码可以节省存储空间,在计算机科学中有广泛的应用。本文件生成的文件也得到了有效的压缩,中间应用了大量的位操作。这些操作用c语言写多少有点不方便。原创 2015-05-30 19:43:00 · 893 阅读 · 0 评论 -
C语言电梯模拟程序
C语言电梯模拟程序一直以来我对电梯很感兴趣,起初认为用C语言不可能实现电梯模拟,需要多线程的支持,因此一直以来也没有想着做。最近数据结构习题书的这道题引起了我的注意,通过几天的努力终于实现了,先将程序的实现与大家分享出来。在这个程序关键是处理好电梯运行状态转换与乘客进出的同步进行。好在题目要求每次输入时要输入下一个乘客到来的时间,使得程序变简单了。通过一个模拟时钟,根据模拟时钟判断该运行哪原创 2015-05-30 20:38:42 · 22815 阅读 · 5 评论 -
在μPD78F0485单片机实验盒上编写程序实现在LCD上显示日历功能
此程序实现了一个普通电子表除计时外的所有功能。首先是可以实时显示时间以及当前日期,同时能对他们进行校正;其次是整点报时功能,当用户打开整点报时功能后可以在整点进行报时;还有就是闹铃功能,当用户设置了闹铃并打开闹铃,到达指定时间闹铃就会响一分钟,当然为了方便用户,用户可以在一分钟内关闭闹铃,而影响下一次闹铃响;最后还有一个初始化模块,长按指定按键三秒可以初始化电子钟。原创 2015-11-06 00:04:34 · 2588 阅读 · 0 评论 -
C2语言
C2语言 C语言以其独特的特性发挥着它的作用,但是C语言没有包和类的概念,导致所有的函数和全局变量都在一个命名空间下,极不方便。如果能利用java包的特性,而又不丢失其原本的语言特性,就很极大方便开发者定义和查找变量以及函数。就像导入包一样import cn.abc.Student而不用#include"student.h";使用Student.sa...原创 2018-10-12 23:01:12 · 1107 阅读 · 0 评论 -
理解c语言helloworld
从helloworld开始下面的代码是最简单的c语言程序,我们编译成汇编语言看看发生了什么事情。#includeint main(){ printf("helloworld"); return 0;} .file "a.c" .def ___main; .scl 2; .type 32; .endef .secti原创 2018-10-12 23:04:43 · 253 阅读 · 0 评论