本帖最后由 wen_hau 于 2013-7-30 00:22 编辑
ADDWF PCL,F
RETLW 0x01;
RETLW 0x02;
goto TAB_SUB1
RETLW 0x04;
goto TAB_SUB2
RETLW 0x06;
TAB_SUB1:...... ......
TAB_SUB2:...... ......
RETLW 0x00;
汇编中可以在表中插入 goto 这样的跳转,这样可以另外种判断或者其他的程序段, C语言中应该怎么实现?效率最高的C程序怎样实现?swith是一个个值得比较,有没最接近汇编的写法?
意思就是PIC可以 在表中 跳转, 跳转了可以做一些与RETLW 0x01; 不同格式的 比如 给标志之类的事情,而C中 只能 一个array给出来的只是一个数,想实现就必须swith case来一个个比较,效率可见一斑了
四楼给出的方法 网上有看到,感觉 还没的swith的效率高, 看来是没什么好办法了,也就安心了,一直查表的时候都会想这个问题,老不安心,感谢各位大大给出答案
|