Der Tiny2313 (oder besser gesagt, Mikrocontroller im allgemeinen) ist einfach nur ein kleiner Computer (der im Vergleich zu deinem SEHR schwach auf der Brust ist), der neben dem Prozessorkern selbst noch zusätzliche Hardware wie Timer, Schnittstellen, AD-Wandler etc. hat.
Die kleinen AVRs haben alle gemeinsam, dass sie ihr Programm nur vom internen Speicher (Flash) ausführen können, bei anderen (wie auch bei den "normalen" Computern) werden Programme aus dem Arbeitsspeicher ausgeführt.
So, jetzt zu deiner Frage, wie ein AVR aufgebaut ist/funktioniert: Es gibt innerhalb des Prozessorkerns verschiedene Komponenten. Eine Arithmetisch-Logische-Einheit (ALU), die für Berechnungen zuständig ist. Einen Registersatz, das sind wenige (bei AVRs 32) Speicherplätze, auf die der Prozessor direkt (schnell) zugreifen kann und die für Zwischenergebnisse benutzt werden. Mehr Speicher steht in Form des langsameren SRAMs zur Verfügung, auf den über ein Speicherwerk zugegriffen wird, für Zugriffe auf den Flashspeicher wird ebenfalls eine Komponente benötigt. Dann gibt es da noch das Steuerwerk, es signalisiert den einzelnen Komponenten, wann sie was zu machen haben, die Bedeutung der Maschinenbefehle ist hier fest verdrahtet. Das Steuerwerk "weiß" also, dass eine Instruktion 0x0B01 bedeutet, dass die Werte aus den Registern 0 und 1 addiert und dann in Register 0 gespeichert werden soll, und teilt dies zur richtigen Zeit den jeweiligen Komponenten mit.
Und weil niemand mit 0x0B01 um sich werfen will, hat man für diese Maschinenbefehle lesbare Kürzel erfunden, das sind die von Richard erwähnten Mnemonics. Das ergibt dann die Assemblersprache, 0x0B01 wäre in ihr formuliert: add r0, r1.
Übrigens, wie das bei Sprachen üblich ist, braucht man auch hier wieder einen Übersetzer, der die Mnemonics dann wieder in eine Kolonne von Bits umformt, das macht der Assembler.
mfG
Markus
PS: Zum 0x0B01: Das ist die hexadezimale Schreibweise für (binär) 0000 1100 0000 0001 falls dir das Binär- und Hexadezimalsystem noch nicht geläufig ist, kann ich dazu ein paar Worte sagen.
Lesezeichen