请教学习C语言的流程
WZB6162013/09/05电子技术 IP:广东
因曾经在大学学习的问题,电脑是个稀罕物,386算不错了,能接触更是奇迹了,主要是学习电子硬件,软件方面因此只注重了C51汇编语言,现在用了十几年的汇编了,针对的都是51单片机。太专一了,程序量太大,费时费力,现在好像都过时了,说起汇编,人家都说是古董级别的,现在主流都是C语言。因此想现在开始学习C语言,请问大家学习C语言需要先学习哪些?我就有算熟练的汇编基础吧,学习C应该不难吧?希望推荐一下教程。谢谢
来自:电子信息 / 电子技术
7
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
daxus
11年5个月前 IP:未同步
565974
以LZ十几年的汇编功底,学习C51应该是非常简单的。
C51是在51系列上广泛使用的C语言,他具有C语言的语法规则,但有一些针对51单片机的特殊关键字以及数据类型等。

建议LZ学习流程如下:
1. 下载一个KailC环境,它是目前最好用的C51集成开发环境,没有之一[s:274]
2. 买一本或下载一本讲解C51的书籍,如果要简单流行,找周立功的资料十个不错的选择
3. 照着书写示例程序,对照汇编,以你的汇编功底相信很容易将C的语法与汇编对照起来学习,这样的学习效率和深度应该是那些不懂汇编的人不能比的。
4. 自己使用C51语言写简单的51程序,如:IO操作,跑马灯。。。
5. 算法的问题如果你用汇编都没问题,用高级语言就更不是问题。
6. 最后,C比汇编通常需要消耗更多的RAM和ROM资源,当然这是对于汇编高手来说的,
   至少我接触的人中,没怎么发现有谁能用汇编写出比C51编译器编出的代码效率更高的汇编程序[s:178]

最后,用我很久以前的一句话总结:在嵌入式系统中,汇编+C = Everything [s:216]
+1
科创币
世纪伯乐
2013-09-05
好评~
+200
科创币
虎哥
2013-09-06
助人为乐
+19
科创币
WZB616
2013-09-06
非常感谢
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
hefanghua
11年5个月前 IP:未同步
565993
回 楼主(WZB616) 的帖子
汇编之所以初期好学,是因为它的语法很简单,故很适合做小产品,优点就不多说了。期待汇编高手给大家讲解下怎么入门汇编。我也用了汇编挺久的,最近也是多种原因需要开始学C。推荐看《零基础学单片机C语言程序设计》,如果是第1版网上有扫描的电子版下载。现在还只是会简单的,像结构体什么的看得一头雾水。
我的学习经历:先是安装keil软件来写流水灯,然后按照网上的写,Keil就报各种错误,到后来在同学的机子上编译没错,自己这边就出错,搞不定了就放着年把。后面需要了又开始捣鼓,发现报错原因是Keil绿化后没有重新算号注册[s:226]。之后改别人写好的程序发现随便加点东西又报错,很是抓狂,后来才知道是函数要在开头申明下,后面再定义一道,不然就会被认为未定义。在网上找各种视频教程与别人写好的程序来看,终于有点感觉了,然后买了刚才说的那本书对照着写程序,边写程序边翻不懂的。随后又基本搞懂了多文件编程,define字符串替代、typedef类型定义从别的程序参考过来,然后是定义uchar类型,也就是原来的定义寄存器。不久,函数运算结果又遇到不能返回多个参数的问题(估计应该用数组或者指针解决),老办法:用几个给各个程序都(分时)用的全局变量搞定。函数的延时也是个麻烦,用for循环的i--来弄才勉强能编译成djnz,找到keil里的自带_nop_()函数代替汇编的nop,时间计算仍旧一塌糊涂。终于消耗近两个月,一个像样子的程序完成,但是看了一些作品的代码之后发现还有好多要学。
+200
科创币
虎哥
2013-09-06
分享经验
+6
科创币
WZB616
2013-09-06
非常感谢,分不多了。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
vcasm
11年5个月前 IP:未同步
566001
学习编程语言最好方法是实践
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
WZB616作者
11年5个月前 IP:未同步
566022
回 1楼(daxus) 的帖子
之前经过一段时间的摸索,对C语言还是有一点点了解的。大致能看懂部分,像简单的IO操作,跑马灯什么的都没问题了,能写能用。只是对其中的有些指令不清楚,有没有专门介绍这些指令的书籍推荐一下?谢谢
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
WZB616作者
11年5个月前 IP:未同步
566023
回 2楼(hefanghua) 的帖子
你介绍的这个书籍不错,我下载到了电子版的。谢谢!
keil软件之前也有用来做汇编程序的编写。现在大多数是用MedWin 编写,功能是不错,但是只支持汇编,还好对keil不陌生。使用也很容易上手的。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
Rcall95
11年5个月前 IP:未同步
642552
这个是学单片机嵌入式的

attachment icon 10天学会单片机迅雷种子.attach 101.76KB ATTACH 43次下载
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
所属分类
上级专业
同级专业
WZB616
机友 笔友
文章
27
回复
247
学术分
0
2006/05/13注册,1个月14天前活动

爱好电子

主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}