[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
Как нибудь это можно обьяснить?
На такой фрагмент:
uint temp0,temp2;
uchar temp1;
temp2=(temp0+((temp1-0x30)*5));
Keil 6.20 выдал следующее:
; SOURCE LINE # 25
0048 75F019 MOV B,#019H
004B E500 R MOV A,temp1
004D A4 MUL AB
004E 2400 R ADD A,#LOW temp0+0FB50H
0050 F582 MOV DPL,A
0052 E5F0 MOV A,B
0054 3400 R ADDC A,#HIGH temp0+0FB50H
0056 AF82 MOV R7,DPL
0058 F500 R MOV temp2,A
005A 8F00 R MOV temp2+01H,R7
; SOURCE LINE # 26
Если посчитать,результаты получаются разные.Это что,глюки оптимизации или где?И при чём здесь DPL?
E-mail: info@telesys.ru