曾经是不是存在过一段时间用PL/M语言对51单片机编程
曾经是不是存在过一段时间用PL/M语言对51单片机编程?很想听老工程师述说这段历史前几天在华为技术手册上看到还保留有用PL/M语言编程才是知道有这么一种语言,好像有段历史被抹掉了一样,对这种语言以前真的是听都没有听过
在百度搜索了 对这门语言的资料也不是很详细,到底是为什么这个东西会消失得无影无踪?感觉就和恐龙从地球消失一样,然后C语言(人类)成为了世界的主人 很久很久以前是,
西安好像有个叫李xx的工程师曾经推崇过, fsaok 发表于 2012-4-22 20:57 static/image/common/back.gif
很久很久以前是,
西安好像有个叫李xx的工程师曾经推崇过,
然后 ?然后由于 PL/M的存在不合理性 PL/M就从地球上消失了? 97年用过PL/M-51的飘过。
PL/M的余孽还在,Keil C51身上还散发着PL/M的某些味道。
当时Intel推出PL/M的时候发了一套标准,有个重要的标准叫OMF-51,就是obj/lib格式标准。
Keil在研发C51的时候,遵从了这个标准,导致一系列不符合C标准的事实,最典型的就是不区分大小写,因为OMF-51不区分大小写。
但是就是这个标准,因为仿真器厂家大都接受OMF-51格式,导致了franklin C51(后来知道是keil做的)的普及。
而IAR这么优秀的编译器厂家,因为仿真器厂家的不配合,反而没有人用。 本帖最后由 wszyjsw2 于 2012-4-22 21:30 编辑
i55x 发表于 2012-4-22 21:24 static/image/common/back.gif
97年用过PL/M-51的飘过。
PL/M的余孽还在,Keil C51身上还散发着PL/M的某些味道。
原来是这样 好像以前的KEIL链接文件后会申城OMF51文件或则.ABS文件然后才是转换成HEX文件的,现在没有了是吗?
PL/M是不是一款高不成低不就的超垃圾语言?要高级语言的特性不如C方便要说底层硬件操作又不如汇编?为什么现在华为公司还在用PL/M?出身年代太晚了 对过去的空白很好奇 wszyjsw2 发表于 2012-4-22 21:28 static/image/common/back.gif
原来是这样 好像以前的KEIL链接文件后会申城OMF51文件或则.ABS文件然后才是转换成HEX文件的,现在没 ...
omf-51有几种尾缀的,lib是库文件,是浮动地址的;
obj有浮动地址和绝对地址两种,c编译器或pl/m编译器出来的是浮动地址的,asm编译器出来的是浮动地址或者绝对地址,根据你的写法不同有不同的效果。
浮动地址地址的obj们要用L51连接器进行定位,生成绝对地址的abs文件,然后转成hex。如果写绝对地址的asm文件,编译出来的obj可以直接转hex。
举例来说
mydatadata 20h
这个就是绝对地址,mydata是一个地址在20h的变量。
mydatads 1
意义与上面相同,申请一个字节的变量空间,但是mydata是一个未分配的浮动地址,具体位置是多少,要等L51连接之后才知道。
浮动地址汇编语言适合于汇编与高级语言混合编程的常识,资源利用率高。 i55x 发表于 2012-4-22 21:36 static/image/common/back.gif
omf-51有几种尾缀的,lib是库文件,是浮动地址的;
obj有浮动地址和绝对地址两种,c编译器或pl/m编译器出 ...
以你当年的PL/M编程经验 你觉得PL/M为什么会消失? wszyjsw2 发表于 2012-4-22 21:44 static/image/common/back.gif
以你当年的PL/M编程经验 你觉得PL/M为什么会消失?
主要是intel停止升级,以及人们懒得学一种新语言(哪怕是很简单的)的缘故。 i55x 发表于 2012-4-22 21:49 static/image/common/back.gif
主要是intel停止升级,以及人们懒得学一种新语言(哪怕是很简单的)的缘故。 ...
呵呵 ,原来还是因为懒得学呀 想知道你现在还用吗?在编程时部分简单和最求实时性的代码你会不会直接就用PL/M写了 wszyjsw2 发表于 2012-4-22 21:54 static/image/common/back.gif
呵呵 ,原来还是因为懒得学呀 想知道你现在还用吗?在编程时部分简单和最求实时性的代码你会 ...
我已经十多年没摸过这个东西了。
不过尽管老,最新的IDE,如keil、万利、zlg的集成开发环境依然支持这个编程语言,原因就是OMF-51的原因,它产生的obj文件格式与keil完全兼容。 i55x 发表于 2012-4-22 22:01 static/image/common/back.gif
我已经十多年没摸过这个东西了。
不过尽管老,最新的IDE,如keil、万利、zlg的集成开发环境依然支持这个 ...
如果AVRARM PIC这样的单片机不支持PL/M的话 他存在和不存在也没有什么区别 可是就搞不懂为什么华为海会使用这种垃圾语言 PL/M应该是intel搞出来的吧,并不只用于51
我买过一本msc-96上用的pl/m书
它差不多就是一种高级语言,学起来麻烦,当年用的人就很少
后来c51把汇编的份额都占了这么多,pl/m和c比起来基本找不到什么优势了
华为什么的还在用这个也许是历史遗留问题吧,如果以前在pl/m上有积累的话
cc224 发表于 2012-4-22 22:14 static/image/common/back.gif
PL/M应该是intel搞出来的吧,并不只用于51
我买过一本msc-96上用的pl/m书
它差不多就是一种高级语言,学起 ...
原来是这么着 历史确实很悲催呀 80C19680C96和PL/M路也差不多到尽头了 cc224 发表于 2012-4-22 22:14 static/image/common/back.gif
PL/M应该是intel搞出来的吧,并不只用于51
我买过一本msc-96上用的pl/m书
它差不多就是一种高级语言,学起 ...
PL/M学起来很容易,我根本就没学过,完全是看《Intel microcontroller handbook》后面附的一段例程,就明白了他的所有语法。用ultraedit打开plm51.exe找到全部关键字一个一个地试,就全明白了,只要有高级语言基础,上手这个东西也就半天时间。 当年 2500AD 比较好用,keil 宏编功能惨败
各家推出的仿真器必须使用 2500AD,可惜最后也消失了{:mad:} i55x 发表于 2012-4-22 22:19 static/image/common/back.gif
PL/M学起来很容易,我根本就没学过,完全是看《Intel microcontroller handbook》后面附的一段例程,就明 ...
哎现在的单片机基本都不带PL/M编译器了
如果INTEL能够持续给予技术支持和更新我觉得即使用ultraedit+PL/M编译器来编译部分代码也是不错的 mobile01 发表于 2012-4-22 22:22 static/image/common/back.gif
当年 2500AD 比较好用,keil 宏编功能惨败
各家推出的仿真器必须使用 2500AD,可惜最后也消失了 ...
{:lol:} 知道2500AD编译器的也是骨灰级人物了,您今年过40了吧? 本帖最后由 mobile01 于 2012-4-23 00:05 编辑
i55x 发表于 2012-4-22 22:38 static/image/common/back.gif
知道2500AD编译器的也是骨灰级人物了,您今年过40了吧?
还在用,而且使用全友ICE2500AD宏定义可达 32bit,标记定义更是没有一家做的如此智慧.
目前全世界没有一家ICE设计的比全友ICE好用{:titter:}
膜拜各位高人,终于明白某些发黄的教科书里面的某段文字了,,,{:sweat:}
页:
[1]