打印

keil真傻,cjne a,#10,$+1 居然不报错

[复制链接]
3160|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
bg6nw|  楼主 | 2009-2-22 08:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
hotpower| | 2009-2-22 08:40 | 只看该作者

正向者为$+3,逆向者想$+1或$+2,都属合法之用,Keil无罪~~~

使用特权

评论回复
板凳
chunk| | 2009-2-22 12:05 | 只看该作者

你知道这样不行就可以了

KEIL的开发者想的是“象这种问题还要我给你个警告吗?”所以他不给你报什么错。更何况人家的C编译器不会产生这种东西。汇编器更多的时候是做为C编译器到机器码之间的“后端”用的。

使用特权

评论回复
地板
xwj| | 2009-2-22 13:37 | 只看该作者

汇编不可能做太多的分析,比如覆盖分析

否则你很多的汇编技巧都会没法玩了

而且人家的C编译器根本就不会产生这种东西

使用特权

评论回复
5
HWM| | 2009-2-22 14:00 | 只看该作者

ASM一般比较忠实于你的想法,包括你的错误或异想天开

使用特权

评论回复
6
学生D| | 2009-2-23 14:00 | 只看该作者

没错呀。

     3: cjne a,#10,$+1 
C:0x0002    B40AFE   CJNE     A,#0x0A,C:0003
     4: nop 
C:0x0005    00       NOP      
     5: ljmp loop 


$: 用来表示当前指令地址,当然就是0x0002, $+!是0x0003,这不正是你的意思?编译器做的十分聪明正确!

要是报错了才傻呢。

使用特权

评论回复
7
gtw| | 2009-2-23 20:00 | 只看该作者

呵呵

汇编器可不是变形金刚,今天你喜欢汽车他就编程汽车,明天你喜欢飞机就变成飞机。

使用特权

评论回复
8
刘前辈| | 2009-2-23 20:22 | 只看该作者

keil可是一个人名!

就好象你说比尔盖茨真...一样,小心别人告你侮辱人...权。

keil带的51ASM汇编程序是Intel的版权,LZ无异于又是在说“Intel真傻”。


中国人总给人留下不好的印象。

说别人傻,是不是就显得自己聪明了?

使用特权

评论回复
9
HotC51| | 2009-2-23 21:52 | 只看该作者

请参见:HotC51共产儿童团第四课:歪门邪道搞破坏

    当然非典型应用是要付出代价的,但只要严格遵守"非典型应用操作规范",那么
“可恶的非典”就能造福与其应用,并能达到奇妙之效果。

    重申:“非典”绝非“技巧”,也不能等同看待,因为本不是一个“数量级的产物”。



团长以后会陆续地散播些流毒给大家~~~

如:
   mov a,#250
   djnz b,$+4;//b<>0执行nop,b==0,执行a=0;
   mov a,#0

课毕。

团长放毒结束要去“吸毒”了~~~

HotC51@126.com   2009.2.23 于菜地。
团部:http://group.**/1623/

相关链接:https://bbs.21ic.com/club/bbs/list.asp?boardid=68&page=1&t=3241150

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

34

主题

511

帖子

0

粉丝