搜索
bottom↓
回复: 65

真是奇怪,难道BASIC真是比C容易学吗?为什么一个缺陷如此之多的语言却有如此高的人气?

[复制链接]

出0入0汤圆

发表于 2005-4-19 16:28:56 | 显示全部楼层 |阅读模式
就如同我们不能总吃婴儿食品一样!

出0入0汤圆

发表于 2005-4-19 17:46:10 | 显示全部楼层
说说我的看法。

什么编程语言最好、最优秀呢?不是汇编,不是C,也不是BASIC,那是什么呢?当然是人说的语言了——人类自然语言,比如汉语、英语......。与计算机语言相比较而言,我更愿意学英语,因为我觉得它比计算机语言还是简单的。在万般无奈的情况下,我认为BASIC在诸多语言中更象人话,所以我感兴趣。

另外BASIC这种很“糟糕”的语言很容易地解决了不大复杂的问题,适合于很多业余选手,够用就好。

还有我想学BASIC也不妨碍我学C,骑驴找驴,不是个坏主意。

出0入0汤圆

发表于 2005-4-19 18:46:02 | 显示全部楼层
早期的BASIC对数据类型限制很少,因此让初学者感到使用方便,但带来的是代码效率很低负面影响,为了维护BASIC缔造者的初衷,后来的BASIC版本仍然不支持系统的低层次编程。此外,即使是编译版本的BASIC的可执行文件,也比C和pascal等语言开发的目标代码大得多。AVR上的BASCOM不知世界是版本还是编译版本的?

出0入0汤圆

发表于 2005-4-19 18:46:05 | 显示全部楼层
没有最好的,只有最合适的。



根据计算机模型,有线性语言,有限状态机语言,栈式语言,并行语言。



根据表述的层次,有陈述解法的语言,陈述问题的语言。



哪一种是最好的?



C应该是最适合做系统和控制的语言。

出0入0汤圆

发表于 2005-4-19 19:16:15 | 显示全部楼层
BASIC是“婴儿食品”?恐怕你掌握的那点知识还停留在BASIC的“婴儿”时代,或者讲你对BASIC的了解还停留在“婴儿”时代。



   BASIC本身在发展,已经不是几十年前的BASIC了。微软的VB是否也是“婴儿”?或微软还是没有长大,还在“婴儿”阶段,所以抱着VB不放?



   AVR的开发平台,编译版本和解释版本的概念是什么?区别是什么?你能讲清楚用C和用BASIC开发AVR系统程序的相同之处和不同之处?



   “此外,即使是编译版本的BASIC的可执行文件,也比C和pascal等语言开发的目标代码大得多。AVR上的BASCOM不知世界是版本还是编译版本的?”它们同开发AVR有何关系?你如何得出这个结论?

出0入0汤圆

发表于 2005-4-19 19:42:02 | 显示全部楼层
为了达到一个目的,容易掌握的必然用的人多,在这一点上BASIC有它历史上的优点,无论是早期的BASIC还是现在的VB,使用它们的人数都比使用其他语言的人数多得多,即使是其他语言的高手,几乎没有不会BASIC的。前曾见过有人贬低用BASIC编程AVR是解释性的,心中觉得好笑,最初的BASIC为方便教学是解释性的,难道今天用BASIC编程AVR,程序在AVR片子里是在解释执行?

出0入0汤圆

发表于 2005-4-19 22:32:37 | 显示全部楼层
说BASIC代码大、效率低,是指在PC即应用方面的,特别是VB的编译据说是伪编译,我曾经想,为什么就不出现真正编译的BASIC那。我曾经分别在DOS下用QB、Turbo C和turbo Pascal作了编译代码比较,做同样功能的程序,QB的代码最大,Turbo Pascal的最小,需要说明的是,分别编译时都是采用缺省的编译控制,未作特别的优化,由于程序不大,未比较它们的速度。后来,又和别人一起分别作了VB、DELPHI和VC的对比测试,共同用三种软件环境编写了处理超大数组的程序,同样采用各系统的缺省设置,通过记录处理前后的系统时间测试速度,结果依次是VC、DELPHI和VB。单片机上曾出现过解释版本的BASIC,记得那是在9X年代,武汉力源公司还组织过全国的比赛。AVR方面的BASIC没接触过,所以才问大家嘛,原来“不知世界是版本...”是笔误,应为“不知是解释版本...”。呵呵


-----此内容被bucker于2005-04-19,22:52:13编辑过

出0入0汤圆

发表于 2005-4-19 22:43:10 | 显示全部楼层
“解释版本”和“编译版本”跟开发AVR有何关系?

出0入0汤圆

发表于 2005-4-19 22:56:16 | 显示全部楼层
“解释版本”和“编译版本”跟开发AVR有何关系?

从学习的角度来看,两者对开发者来说没有关系,从做产品来看,使用编译版本意味着你可以在实现同样功能的前提下,可获得比解释版本更快的速度,或者说两者速度相同的情况下,解释版本需要更高速度的处理器。

出0入0汤圆

发表于 2005-4-19 23:01:48 | 显示全部楼层
在单片机方面,不管用那个语言写的最终都是转化为对应的单片机的指令的!

出0入0汤圆

发表于 2005-4-19 23:07:52 | 显示全部楼层
单片机方面应用BASIC得比较少,我知道得不多,在这里就仅仅讨论解释和编译的差别。很多低端的PLC或类PLC就是解释方式工作的,虽然完成相同的工作必须执行同样的机器指令,但解释系统在解释过程中是要占用系统时间的。

出0入0汤圆

发表于 2005-4-19 23:24:46 | 显示全部楼层
“从学习的角度来看,两者对开发者来说没有关系,从做产品来看,使用编译版本意味着你可以在实现同样功能的前提下,可获得比解释版本更快的速度,或者说两者速度相同的情况下,解释版本需要更高速度的处理器。”??????



   在AVR中有BASIC的解释系统?8051、PIC等等,哪块单片机中有解释系统?



   PLC或类PLC与现在我们开发的单片机一样么?



   越讲越不着边了。

出0入0汤圆

发表于 2005-4-19 23:41:08 | 显示全部楼层
武汉力源的BASIC单片机,哈哈。好多年了,好搞了个全国竞赛什么的。



PC方面,我还是用VB,容易学,普通应用没问题。

单片机呢,资源紧张,我选择C了,编译效率高,执行速度也高,必要时嵌入汇编。

出0入0汤圆

发表于 2005-4-20 00:00:30 | 显示全部楼层
武汉力源的较XXX58来着,内部固化了解释系统,用一片93C46作源程序存储器,当时没感兴趣,现在记不清了,无线点杂志上可查到。我并没说AVR的BASIC是解释的,只是问问何种而已,到是说过BASIC的编译系统与C等有差距,主要是在PC上对比,看起来有必要做个简单评测,大家可以各做一段程序测试一下各种语言代码大小和速度。当然,这只是比个大概而已。

---------------------------------------

             以下是转贴本论坛的文章



笔者先是升级到BASCOMAVR1.11.7.7,发现程序编译后可正常运行(主要是与数码管显示BC7281通讯),但随即发现程序超过25%(Mega8的8K)后,即不再生成烧写文件,证明一本站提供的破解没能完全破解该版本,二该版本也没有像它所称的代码限制为4K;然后笔者卸载然后使用BASCOMAVR1.11.7.4,但随即发现编译后(破解后没限制)通讯不正常,总结后认为该软件提供的延时子程序有问题。笔者无奈换用Codevision,同样的代码内容经编译后占用8K的11%,笔者决定从此放弃BASCOMAVR。

真情建议!
-----此内容被bucker于2005-04-20,00:07:27编辑过

出0入0汤圆

发表于 2005-4-20 08:29:12 | 显示全部楼层
要说执行效率高,节省资源还得说非汇编莫属,所以使用高级语言为的是编程效率和移植方便。各种高级语言差别在于各自的语法体系不同,最后都得形成汇编代码执行。

出0入0汤圆

发表于 2005-4-20 11:58:35 | 显示全部楼层
谈谈自己的浅见:所谓解释,是计算机内部含有对应的解释程序,对符合其语法要求的文本文件进行扫描,直接产生执行过程,而不形成对应文本的机器码。譬如:sin(x)的解释,先把x,送往数据运算栈,然后根据关键字sin,寻找解释程序的对应入口地址,调用该过程,产生运算结果。而avr的bascom形式上采取basic语法,经过编译,产生符合avr的机器码。就本人的陋见,本质上和c没有区别,因为它也是编译的,结构化的。至于代码长度,只是编译器的优化考虑,我感觉为了迎合初学者的需要,有时会比较初糙。例如中断响应,若不自己手工处理,bascom会几乎把所有通用寄存器作push,pop处理,这样就增加了代码长度和减慢了程序效率;幸好,bascom直接支持混合汇编,熟识单片机结构的人可以非常灵巧地处理自己的程序。

出0入0汤圆

发表于 2005-4-20 12:53:54 | 显示全部楼层
单片机中是没有有解释系统的啊!实际上不管是C还是其他的语言,关键在如何把这些语言变成汇编,所以可以认为单片机没有解释和编译的区别。

出0入0汤圆

发表于 2005-4-20 13:40:35 | 显示全部楼层
basic确实比c容易接受,容易理解。bascom易于入门,提高后可以用汇编互相配合,相得益彰。

出0入0汤圆

发表于 2005-4-20 13:46:30 | 显示全部楼层
本人感觉,很多人总是一个奇怪的想法,整天都在谈论是这个语言好,还是那个语言棒。

说实话,这些人什么语言都没学好。

不管什么语言,只有你学精了,就可以了。

语言只是一个工具。

bascom 个人认为是一个不错的语言,适合初学者入门,也可以使用它来开发具体的项目。

语言本身没有高低,开发和使用的人,却有高低哦。

出0入0汤圆

发表于 2005-4-20 15:38:04 | 显示全部楼层
18楼的意见非常正确。

   

   “语言本身没有高低,开发和使用的人,却有高低哦”说到了点子上了。你对AVR的硬件不熟悉,没有扎实的开发单片机的基本功,“什么语言都没学好”只是知道点皮毛,那么不管你使用什么开发语言,你还是设计不出好的东西。



    bascom确实是一个不错的语言,不仅适合初学者入门,同样适合用于开发具体的项目。当然,要使用好BASCOM,你必须对它要深入的了解,知道它的特点,这样才是真正的“会用”。举几个网站上提出不足的例子:

    1。延时函数。在BASIC中有延时函数,有的人说延时不准确。对的,在这些系统中提供的延时函数都是采用软件延时的,如果你的中断多,中断服务处理时间长,延时函数肯定不准,CVAVR中也有延时函数,也是不准的。就是你在C中写一个软件延时函数,一旦被中断打断,你的延时还会准吗?

    2。中断响应。在BASCOM中,若不自己手工处理,会把所有通用寄存器作push,pop处理,增加了代码长度和减慢了程序效率。可BASCOM提供NOSAVE的选项,可以让用户自己去做处理。其实,中断服务程序的编写,本身就是要用户仔细的考虑的,不管你用什么语言。你真正知道如何编写中断程序的话,使用任何的语言你都会自己做一些处理的。

    3。在BASCOM、CVAVR、ICCAVR等中都提供了一些类似RS232通信、I2C的函数和语句,他们都是采用循环访问、I/O模拟的方式完成的,一般的使用,做个测试和简单的实验可以。真正在应用中使用,需要仔细的考虑。实际上,对于AVR讲,使用串行接口最好的方式是采用“数据缓冲区+中断”方式,这样才能充分发挥AVR的长处、效率和速度。



    以我的观点是,使用BASCOM最大的缺点是不适合编写比较大型的系统程序,如要使用RTOS、USB、TCP/IP、文件系统等,因为这些内容有很多的参考代码,决大多数采用C写成的,移植到BASIC不方便。

出0入0汤圆

发表于 2005-4-20 16:03:21 | 显示全部楼层
我在laser 310上用Basic,如果谁用过这个机器,肯定是骨灰级玩家了.后来出了Apple II,里面还是固化Basic,我想Basic才有这么大的影响.后来到了8086时代,基本上是C的天下了,还有一部分是Pascal,因为borland的trubo C 2.0和trubo pascal极为出色.当然,还有一个编译型的Trubo basic也很有名,不过Basic毕竟有很多缺陷,没有能坚持下来.你们可以去查查,好多东西都是C写的,还有Pascal.

其实大部分是习惯问题,我原来就用c,后来在windows下用的是Pascal,现在是两个同时用,一个写PC端,一个写AVR.习惯了觉得同时用2种语言都没有什么问题.

另外,如果精通了C,熟悉了汇编,用C的代码效率也会非常的高.综合的效益会比汇编高好几倍!

出0入0汤圆

发表于 2005-4-20 16:05:15 | 显示全部楼层
现在是技术飞速发展的时代,同时也是市场经济的时代。如果没有市场,那么什么AVR、BASCOM、ICC、CVAVR等都不会发展到今天。类似Z80单板机、“武汉力源的较XXX58来着,内部固化了解释系统”,我都用过,现在还有几个人在用?早淘汰了。因为他们跟不上技术的发展。人也是一样,你的技术跟不上,也是要淘汰的。



    对于楼主的“就如同我们不能总吃婴儿食品一样!”观点,我拿成语“对牛弹琴”做比较,它有两层含义:第一层是形容听者的愚沌,而深入一层的意思是对弹琴者的讽刺,是指弹琴者不看对象。所以,BASIC不是“婴儿食品”,它至少是“青年食品”,确是你的知识还处在“婴儿阶段”,甚至吃“婴儿食品”都会“消化不良”。作为“成年人”,它绝对不会吃“婴儿食品”时“消化不良”,只是“吃不饱”或“不够味”。

出0入0汤圆

发表于 2005-4-20 16:21:21 | 显示全部楼层
世界本来就没有垃圾,因为人多了,才有了垃圾——人就是如此动物。

Basic本来就不是什么垃圾,因为有的人脑子里满是垃圾,所以Basic就成了垃圾。



用Bascom写了一段时间程序后,发现Bascom还不能当Basic看待,因为无论谁,要在一个只有很少内存的计算机中做一个满意的系统是如此困难,以至……。

所以Bascom有很多诸如此类的问题,就连简单Print也有如此这般的问题,有时一生气,也觉得其与垃圾无异,但及仔细分析原因后发现,自己对在单片机写程序的要求又是如此之高。

想想,要在一个可能只有数百字节(不是几百字节)内存的设备中用实现一个完整的高级功能是如何的困难!于是有时又对Bascom肃然起敬。

这就是Bascom。



俗话说:站着说话不腰疼。也是,坐着说的腰更不疼了。

出0入0汤圆

发表于 2005-4-21 07:03:29 | 显示全部楼层
为什么要去学BASIC,真是多余。人的时间有限,一开始选好一种编程语言对于编程者来说可以节约很多宝贵的时间。除非你有很多时间也有研究编译软件的爱好。否则大大的不必要去搞BASIC。这个东西确实有很多不能令人满意的地方。

语言是工具,选好一种工具就可以了,你有精力和时间可以选多种工具,否则选C语言吧,这是精明的工程师的选择。

出0入0汤圆

发表于 2005-4-21 08:45:06 | 显示全部楼层
楼上的我不同意你的说法,是你自己的想法完全可以,但不能让别人照着你的想法做,就像有人喜欢用VC,有的喜欢用Delphi或者VB,更有人根据编程目的几种都用。编程语言是发展的,就像当初的COBOL,FORTRAN,ALGOL以及BASIC(实际它是FORTRAN的一个子集)时代,互相竞争,互相促进才产生了今天的VC、VB、DELPHI....。我感觉现在用高级语言对单片机编程,各种高级语言正处在春秋战国时代,百花齐放,百家争鸣,互相促进发展。就拿AVR上的C语言来说,就有GCC,ICC,CVAVR等等,孰优孰劣也是仁者见仁智者见智,他们只能说符合C标准,可是面对像AVR这样的哈佛结构体系和内外资源,又不得不加入各自的非标准的处理方法,甚至还有BUG产生。但是无论怎样AVR上的C、BASIC包括PASCAL,都会越来越完善的。

出0入0汤圆

发表于 2005-4-21 09:13:50 | 显示全部楼层
单片机的BASIC大部分都是解释型的。

最早应该是80年代中期的MC6805有一种BASIC变种,固化解释器。

8032也有BASIC解释器。

力源是用PIC单片机二次开发,固化BASIC解释器推出的“BASIC单片机”。

不过我认为在单片机上搞这些解释器太滑稽了,背离了单片机的基本用途。



Laser310是Z80的机器,比AppleII出现的晚很多。

出0入0汤圆

发表于 2005-4-21 10:40:25 | 显示全部楼层
仁者见仁,智者见智.

能完成设计指定的工作的都是好的,其实,现在对单片机代码的效率的要求已经和Z80时代的已经是不同的概念了.

出0入0汤圆

发表于 2005-4-21 10:58:02 | 显示全部楼层
to:notomaqi 老骥



你找几个不是C或者BASIC的单片机编程语言看看。



注意是单片机的,不是PC的。

出0入0汤圆

发表于 2005-4-21 11:59:24 | 显示全部楼层
C是简洁高效,Pascal是优雅高效,Basic是什么?简单.不过,Basic的简单来源于数据类型和处理能力的简单,正是它的简单限制了它的应用.呵呵

出0入0汤圆

发表于 2005-4-21 12:05:36 | 显示全部楼层
如果一个东西存在,那么必定有它存在的理由.

正是由于BASIC是一个"缺陷如此之多的语言",才显得c的完美.

出0入0汤圆

发表于 2005-4-21 13:46:47 | 显示全部楼层
怎么CSDN的语言之争,在这也开始了



没必要吧,什么东西存在都是有根据的,不会无原无故的

出0入0汤圆

发表于 2005-4-21 14:21:56 | 显示全部楼层
回28楼 dd123:

我随便找的几个,你开开眼:

http://www.ibrtses.com/embedded/avruart.html

http://www.ibrtses.com/embedded/avrtimer.html

http://www.compass-lab.com/SoftTool00.htm

http://www.ben.cz/eshop/_bn-anot/121163.htm

http://www.ustr.net/avrfiles/avrfiles.shtml

http://users.iafrica.com/r/ra/rainier/pAVR.htm

http://www.analog-synth.de/avr/

还有这个:



点击此处打开armok0146469.PDF
-----此内容被notomaqi于2005-04-21,14:32:47编辑过

出0入0汤圆

发表于 2005-4-21 14:28:55 | 显示全部楼层
这个PDF文件没传上去,现补上

AVRPascal.PDF

出0入0汤圆

发表于 2006-3-30 00:25:08 | 显示全部楼层
呵呵呵看到马潮老师和大家精彩的对话,我这个当菜鸟真的很感激,心中一块大石头落了地。



取其精华,去其糟粕,对待任何事物都是如此,不光是一个小小的编译器。



现在我就正如马潮老师所说的:“以我的观点是,使用BASCOM最大的缺点是不适合编写比较大型的系统程序,如要使用RTOS、USB、TCP/IP、文件系统等,因为这些内容有很多的参考代码,决大多数采用C写成的,移植到BASIC不方便。 ”。。。。。。我现在在小系统(其实系统都不大,程序一般来说不会超过4KB,控制的对象也算简单的)里面就是用BASCOM或者FASTAVR写的程序,一般来说我也只用到了Mega8/16/32,Mega128很少使用。



马潮老师提到MCU内部的RTOS、TCP/IP和FAT文件系统,我并不懂,也没有使用过,没有接触到,就没有发言权,所以我还在努力学习。



个人认为:asm必须掌握,那是基本;C语言掌握,那是大众交流的通用模式;basic语言可以选择一门掌握,那个对于小系统的开发还是比较快的。不强求全部掌握,但是至少掌握两门。

出0入0汤圆

发表于 2006-3-30 12:04:55 | 显示全部楼层
basic有什么好?除了入门容易点就是了,我刚也是学basic的,那时c难入门,现在入门了,觉得C更好用呢。呵,我喜欢c了,有条件的最好还是学C语言吧,因为它是以后发展的前途,哈```。

出0入0汤圆

发表于 2006-3-30 19:27:09 | 显示全部楼层
楼主搞错了,不是BASIC语言比C好学,而是BASCOM这个编译器把很多底层操作给封装好了,直接调用比C简单得多,比如:对于红外遥控解码,BASCOM一个GETRC5()语句搞定,再看看C语言,还要操作定时器,还要解码,相对罗嗦多了。所以,BASCOM是一个“快餐开发工具”,不是BASIC有多好学,而是BASCOM的作者为我们提供了一个好用快捷的开发环境而已。



其实很多人在这里争论B和C谁好的问题,倒不如争论这个软件和那个软件谁好来得痛快,争论2种语言的优劣,不是我等凡夫俗子所能下定论的!

出0入0汤圆

发表于 2006-3-30 22:57:52 | 显示全部楼层
不要批评任何一种语言和工具,那样会伤害使用者的感情。WaterCat之所以激愤,JAMESKING之所以执着,都是因为有人粗暴的伤害了别人的感情。

    套用生物学上的一句话:凡存在的,必有其理由。李白的话:天生我材必有用。所以质疑BASIC或小视C都是一种无知。

    但在这里的讨论真让我兴奋,在这里可以看到很多平时不会去注意的知识。我暂时不会用AVR,所以只是__路过__。很高兴认识了这么多有个性的网友,有空再来路过。

    再见!

出0入0汤圆

发表于 2006-3-31 09:40:44 | 显示全部楼层
如果大家都不提供库函数,那么到底谁好用?我想都差不多吧。

反正对我说来难度都差不多。



另外武汉力源的PS1008 basic单片机的IDE谁有呀?我的盘坏了,没法玩了。

出0入0汤圆

发表于 2006-3-31 12:50:13 | 显示全部楼层
哎。。。。PS1008BS的软盘我也坏了,发霉了。。。。。好多年没用了。。。。软驱也发霉了。。。。55555555555555555。。。。。。。。。。

出0入8汤圆

发表于 2006-3-31 21:04:46 | 显示全部楼层
我感觉不管什么语言,入门都容易,没什么难的,关键是要精通才行

出0入0汤圆

发表于 2006-4-2 12:43:29 | 显示全部楼层
我喜欢BASCOM, 用它开发项目快啊, 有什么比它快? 现在时间就是金钱, 以后相信会有更快的工具, 现在有些单片机的图形化开发工具都出来了, 连程序都不用写, 这是未来的趋势.

出0入0汤圆

发表于 2006-4-2 18:29:18 | 显示全部楼层
嘿嘿图形化编程。。。看到有些PLC就是这样的,连写语句都省了。。。好东西啊,只要执行速度能满足要求,就是好东西。

出0入0汤圆

发表于 2006-4-3 21:29:19 | 显示全部楼层
门坎很低呀,所以初学者喜欢BASIC.(汇编用得好的人,我看,打死他们也学不会BASIC.)



如果真用BASIC做项目,哪天老板想换一种芯片,那就是一场灾难,据我所知,单片机里,应该就只有AVR有BASIC编译器.



于是,又回到C上来了.



所谓原地踏步,就是这么来的.


-----此内容被lawn于2006-04-03,21:48:25编辑过

出0入0汤圆

发表于 2006-4-4 06:42:55 | 显示全部楼层
lawn,据我孤陋寡闻,也知道pic,51的basic编译器,而且,pic还有至少三套b编译器。

出0入0汤圆

发表于 2006-4-4 12:22:05 | 显示全部楼层
算我孤陋寡闻,我真不知还有别的BASIC编译器.呵呵..



不过,纵然真的有,应该用的人也不多吧,我在51与PIC的论坛逛了不下二年了,从来没有人谈起BASIC.这样一来,将来能交流的人可能也不多.



用BASIC,当然不会有问题,要不然,它也不可能出现在市场.



现在国际上软件交流的通用语言是C,几乎你能找到的比较大型的系统都用C.如果你不懂,那就真的浪费了这么好的资源了.



如果你只做一些小型应用.我也推荐用Basic,门坎低,少了很多的培训成本.

出0入0汤圆

发表于 2006-4-4 20:26:47 | 显示全部楼层
17楼的“basic确实比c容易接受,容易理解。bascom易于入门,提高后可以用汇编互相配合,相得益彰。”我很赞同。语言的“好坏”还得看是什么人用,用于哪方面。我是刚从汇编转到bascom的。用于工业比较简单的实时控制,又不是专门搞单片机程序设计的,又想快速得到市场回报的我,觉得bascom最合适。没有汇编灵活,没有plc编成简单,但是编程既不像汇编那样麻纺,又不像plc那样死板,非bascom莫属!

出0入0汤圆

发表于 2006-4-6 08:44:19 | 显示全部楼层
呵呵呵呵我也是asm转basic的。。。只不过是fastavr罢了。。。因为可以有清晰的汇编输出,所以不怕怕。。。。

出0入0汤圆

发表于 2006-4-11 13:21:02 | 显示全部楼层
不同的语言应用于不同的领域,VB没听说用来做驱动,汇编也罕见用来做WEB,工具而已,看你的需求而定。

出0入0汤圆

发表于 2006-4-11 22:58:32 | 显示全部楼层
呵呵,青菜萝卜各有所好。

因为平时PC上用Delphi,俺还想用PASCAL编AVR呢。

可惜高版本AVRCO没有XX,低版本AVRCO不支持M16,只能作罢。

出0入0汤圆

发表于 2006-4-14 13:46:43 | 显示全部楼层
楼主你喜欢用C就算了。。。。。。。。

我会C语言,可是我学AVR单片机我用Bascom入门,怎么呢?不管黑猫白猫,能抓老鼠的就是好猫。

楼上已经很多人说得够彻底了,我再多扯二句。能开发出产品就是硬道理,与其你站在那犹豫该用哪一种工具的时候,人家已经做出来了。

我的看法是,入门用Bascom,至于后面的爱用啥就用啥,看各自本事了!







<font color=red>[版主JAMESKING认为发贴者说话有过激言辞,容易引起不必要的麻烦,故修改]

出0入0汤圆

发表于 2006-4-14 15:18:19 | 显示全部楼层
武汉力源的PS1008 basic单片机的IDE我有,谁需要请告知伊妹儿.

另:建议不要再争论用什么语言好,纯粹浪费时间,时间宝贵呀!你爱用尽管用好了,不要强加于人,幸亏是选开发工具不是选女朋友,要不可麻烦大了.

出0入0汤圆

发表于 2006-6-1 06:30:13 | 显示全部楼层
总有些人喜欢以使用什么东西来抬高自己,才引发这无聊的争论。

象楼主这样把大家比喻成婴儿,就是为了反衬他好象是个大人。
-----此内容被xpt2于2006-06-01,06:33:45编辑过

出0入0汤圆

发表于 2006-6-1 11:17:44 | 显示全部楼层
楼上的不要开玩笑,你看看帖子就知道了,楼主是老手了。

出0入0汤圆

发表于 2006-6-1 16:44:46 | 显示全部楼层
哈哈,你是看我的积分啊,真的只有1分。跟大家没的比。水平也不高,但我觉得新老手都是平等的,应该懂得尊重别人,资历和水平如果用来做贬低别人的资本,必然遭人反感。任何“高人”都应懂得天外有天的道理。把BASIC比成婴儿,把“C”比成大人,那象我这样“VB”、“C”、汇编都用的人算什么呢?

出0入0汤圆

发表于 2011-5-7 14:37:01 | 显示全部楼层
五年前的讨论 被翻到

出0入0汤圆

发表于 2011-5-7 16:13:21 | 显示全部楼层
继续挖坟

出0入0汤圆

发表于 2011-5-7 16:30:00 | 显示全部楼层
LS牛

出0入0汤圆

发表于 2011-5-7 20:59:15 | 显示全部楼层
挖挖挖!!!

出0入0汤圆

发表于 2011-5-7 21:21:07 | 显示全部楼层
BASIC入门的飘过

出0入0汤圆

发表于 2011-5-8 17:26:50 | 显示全部楼层
什么语言其实都是一回事。basic有很多人用跟微软,比尔盖子有关。
因为微软当年推出了raid开发工具visual basic,而同时代vc想写个界面那是相当的难。
微软之所以钟爱basic,因为bill gates当年比较喜欢basic,号称微软工程师解决不掉的问题都交给bill gates用basic都可以解决。
不过依我看,bill很像很多it公司的老板,技术根本不行,还总是吹嘘“当年是技术大拿”,因为,技术大拿会偏爱basic吗?很少吧。
bill也就是从小在贵族学校上学时学过几天basic从此就念念不忘把

出0入0汤圆

发表于 2011-5-9 10:07:09 | 显示全部楼层
回复【11楼】machao
-----------------------------------------------------------------------

很久很久以前(上世纪80年代),Intel搞过8052BASIC,是解释型的,并公开源码(汇编)。用户代码可以加载到外部RAM,由ROM中的8052BASIC解释器负责解释。所以,BASIC在MCU中也有解释型和编译型两种。

由于16位/32位处理器的普及,因为动态Web、网络等需要大量脚本和高级语言用于网络字符串处理等。除了C/C++和BASIC,有许多高级编程语言进入MCU,有:

Java(JavaCard/Motorola的GPRS模块)/Python(GPRS模块和Python-on-a-chip)/Pascal(AVR)/C#(在netduino的ARM板上运行嵌入式版本C#)/FORTH,甚至Lua(Web Server脚本)/Javascript等脚本语言也开始进入嵌入系统(比如卫星电视接收卡的脚本等)。

现在的嵌入编程语言百花齐放,愿意学的人可以学到不少东西。

同样使用C/C++,Arduino采用Java应用作为IDE,掩盖了底层C/C++细节,对于许多没有微电子经验的人来说使用起来更加容易。而熟悉C/C++底层的人则可以开发自己的硬体去配合这种趋势。

这里有详细介绍:
http://stackoverflow.com/questions/1082751/what-are-the-available-interactive-languages-that-run-in-tiny-memory

出0入0汤圆

发表于 2011-6-10 11:12:26 | 显示全部楼层
首先,B确实简单,别的不说,就那个大括号和语句分割的分号,C就比B麻烦(有多少人因为少了一半大括号或少分号编译时出错)
其次,语句上都差不多,但B要比C灵活,因为有无条件转移(据说有这个不好,容易乱,但请问,乱还不是认为写程序时造成的吗),多点功能可以不用,但真要用时就比没有强吧
再次,程序=算法+数据结构,如这样说B C都是一样的,以前说C有指针,B没有,但现在B里有了,还有什么区别吗?
最后,都说C是写底层的,但对于单片机程序,用B不也是为了控制硬件吗,这个目的不会变

总结
B其实就是把底层的东西给封装了,方便了使用,并且简可以直接调用封装的功能,繁可以用汇编。至于说B是解释的和效率低编译的代码大我要说一句,就当是解释的(其实是编译的)而且效率低,这就体现在速度上,可现在的单片机比以前的速度要快N倍,这个还是问题吗,代码大也同上,单片机的ROM也越来越大,所以这些都不是问题(前提请注意,如果你是个菜鸟的程序员,你用汇编写的代码的效率和大小未必能比B编译的好)

其实任何事物都是存之有道,B能生存,肯定有它的优势,而且开发B编译器的,也许用的并不是B,但人家为什么还要开发B的呢?语言并没有哪个垃圾之说,垃圾的是使用的人,给你个金碗去要饭,金碗也只是个要饭的碗。技术上菜可以学还可以进步,就怕思想垃圾了,脑子里认为这个高级那个低级......

QQ和宝马,堵车时都挂不上二挡,跑高速都能跑到超速。

出0入0汤圆

发表于 2011-6-10 11:21:12 | 显示全部楼层
51真的比ARM好学,怎么如此多的人用51

出0入0汤圆

发表于 2011-6-10 11:34:28 | 显示全部楼层
BASIC当然有它的长处。当年比尔盖茨的第一个商业化软件就是一个basic解释器。因此,也似乎微软和basic语言结下不解之缘。可以说,basic是现在应用最广泛的语言之一了。网站上,我们用的asp就是基于basic的,office autocad等许多常见的商业软件也支持使用VBA来做二次开发。 vb.net将basic放到了与c#,java同一起跑线上。windows的脚本也是用VBS来写。因此,我觉得,学计算机语言,还是从visual basic开始比较好入门,而且应用也广泛。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-6 16:15

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表