ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
27 апреля
341650
AlexBi (19.07.2012 10:22, просмотров: 16882)
Почему странно себя ведет hi-tech pro 9.81 при компиляции switch-а он пытается создать огромную таблицу переходов, хотя она не требуется. Может это версия компилятора не удачная? Какая удачная? У меня другой нет... При компиляции switch-а создает такое. Кажется все правильно, но почему jumptable размером 260 байт, если все варианты укладываются в диапазон 0-6? 1231 ; Switch size 1, requested type "space" 1232 ; Number of cases is 8, Range of values is 0 to 6 1233 ; switch strategies available: 1234 ; Name Instructions Cycles 1235 ; direct_byte 21 7 (fixed) 1236 ; simple_byte 25 13 (average) 1237 ; jumptable 260 6 (fixed) 1238 ; rangetable 11 6 (fixed) 1239 ; spacedrange 20 9 (fixed) 1240 ; locatedrange 7 3 (fixed) 1241 ; Chosen strategy is direct_byte 1242 010F' 0084 movwf 4 1243 0110' 3007 movlw 7 1244 0111' 0204 subwf 4,w 1245 0112' 1803 skipnc 1246 0113' 2800' goto l4525 1247 0114' 3000' movlw high S4807 1248 0115' 008A movwf 10 1249 0116' 1003 clrc 1250 0117' 0D04 rlf 4,w 1251 0118' 3E00' addlw low S4807 1252 0119' 0082 movwf 2