Hardware-Multiplizierer und Teiler wirst du in den kleinen
µC (Mikrokontrollern) ehr nicht finden, dies ist das Gebiet
der DSPs (digital signal processor). Multiplizierer sind in
Hardware sehr aufwendig zu integrieren und verbrauchen
verhältnismäßig viel Chipfläche. Im normalen
Verwendungsbereich dieser µC werden selten schnelle
Multiplikationen / Divisionen benötigt, so dass man sie in
mehreren Schritten mit den normalen ALU-Befehlen (Arithmetic
Logical Unit) berechnen lässt. Der Multiplizierer / Teiler
wird in Software geschrieben. Wen man sich auf
Multiplikationen und Divisionen zur Basis 2 Beschränkt, geht
es auch direkt mit den Schiebebefehlen der ALU.
(
In FPGAs (Field Programmable Gate Array) werden vom
Hersteller schon mehrere Multiplizierer integriert damit vom
Benutzer dafür nicht viele Logikelemente verbraucht werden
müssen, des weiterem kann man einen Multiplizierer, der
schon fertig im Silizium verschaltet ist, schneller takten,
als einen aus vielen Logikelementen zusammengesetzte.
(Das war mal ein kleiner Einblick in die programmierbare Logik)
)
Und immer der Streit Assembler <-> C.
In der Zeit von RISC (Reduced Instruction Set Computing)
würde ich in jedem Fall zu C raten wegen der besseren
Wartbarkeit des Codes. Das Argument der schnelleren
Programmausführung lasse ich mal nicht gelten. Bei CISC
(Complex Instruction Set Computing) macht es noch einiges
aus, da die CPU viele Befehle aufweist, die teilweise nur
von bestimmten Registern durchgeführt werden konnten. Der
Compiler konnte von den vielen Befehlen dadurch nur ein Teil
nutzen.
RISC-CPUs sind auf die Verwendung von Compilern optimiert.
Sie besitzen nicht mehr so viele Befehle, dafür aber mehr
Register die gleichwertig genutzt werden können.
Für die AVR-Familie von Atmel gibt es einen kostenlosen
C-Compiler. (Hattest du ja schon gefunden und wurde schon
mehrmals erwähnt.)
Für AVR Besorge dir am besten:
AVR Studio 4 (Entwicklungsumgebung, Assembler, Simulator)
http://www.atmel.com/dyn/products/tools.asp?family_id=607#798
WinAVR (C-Compiler kann in AVR-Studio eingebunden werden)
http://winavr.sourceforge.net/
PonyProg2000 (Programmer)
http://www.LancOS.com
http://de.wikipedia.org/wiki/Atmel_AVR
AVR-GCC-Tutorial
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial
MfG
Holger
_________________
George Orwell 1984 ist nichts gegen heute.
Der Überwachungsstaat ist schon da!
Leider lernen die Menschen nicht aus der Geschichte,
ansonsten würde sie sich nicht andauernd wiederholen.