Bernd schrieb:
> hi, mag sein, doch der Code mit
>
> USART_Transmit(line & (1<<7)?'1':'0');
> (...)
>
> ist Langsamer als
>
> USART_Transmit(49-!(line & (1<<7)));
> (...)
>
> das ist wesentlich schnell in der Ausführung auf dem µC
Wie kommst Du zu dieser Erkenntnis?
Das mit Abstand langsamste überhaupt ist der Aufruf von
USART_Transmit(). Das braucht nämlich so lange wie das Senden eines
Zeichens über die serielle Schnittstelle. Bei 9600 Baud also etwa 1
Millisekunde. Das dürfte gut das tausendfache von dem sein, was der Rest
braucht.
Daß hingegen der Ausdruck
langsamer sein soll als das hier
das bezweifle ich. Was soll da langsamer sein?
Und vor allem, was soll da in Relation zur Ausführungsdauer von
USART_Transmit "langsamer" sein?