Schaut euch doch mal den 8051 an... der ist besonders "schnell"!
Hallo Besucher, der Thread wurde 14k mal aufgerufen und enthält 108 Antworten
letzter Beitrag von Heiko am
C64 CPU MOS 6510 wirklich so langsam?
- MiCv2
- Erledigt
-
-
Schaut euch doch mal den 8051 an... der ist besonders "schnell"!
Aber der nennt sich fairerweise wenigstens Microcontroller.
-
Abend,
Danke für die vielen Antworten, sehr interessant
Hier ein Bild, woher ich den CPU- Vergleich habe..
-
..und noch krasser
MOS 6502 8 MHz = i8088 32 MHZ
-
.und noch krasser
Das ist nicht "krasser", das ist genau das, was ich oben ausgeführt habe, mit Begründung ...
Mit dem kleinen Vorbehalt, dass der 6502 schlecht hoch getaktet und auch schlecht (gar nicht) mit Taktfrequenzen gegen 0 Hz betrieben werden kann, eben wegen seines "nicht statischen" Designs. Waitstates usw. kennt er nicht.
-
Ohne einen Link auf das Video? Wie sollen man da sagen, ob der Vergleich stimmt?
@ detlef, hoffe Du bist jetzt zufrieden
MiC
-
Das ist nicht "krasser", das ist genau das, was ich oben ausgeführt habe, mit Begründung ...
Ich verstehe was Du meinst, Danke
-
-
[EDIT: Falsches Zitat entfernt]
Ich verstehe was Du meinst, Danke
Offensichtlich nicht, denn der 286 ist ein 16-Bitter ...
-
Offensichtlich nicht, denn der 286 ist ein 16-Bitter ...
Und bevor jetzt einer schreibt: "Der 8086 auch" ... da gibt es einige klitzekleine Unterschiede ...
Grundlegende Unterschiede in der Architektur zum 8086:- kein gemultiplexter Adress/Datenbus mehr (8086: Daten- und Adressbus gemultiplext)
- Schnellere Speicherzugriffe: 2 Takte (8086: 4 Takte)
- zusätzlicher Adder für Adressberechnung (8086: normale ALU wurde zur Adressberechnung genutzt, 4 Takte zusätzlich bei einfachen
Adressberechnungen
[BP+SI]
, 8 Takte bei doppelten[BP+SI+nn]
)
-
Ohne einen Link auf das Video? Wie sollen man da sagen, ob der Vergleich stimmt?
@ detlef, hoffe Du bist jetzt zufrieden
Ja, habe das Video gefunden. Aber er stellt das einfach so in den Raum. Ohne weitere Belege.
Der 8088 hat eine Menge interne Register. Auch Z80 und 8080 habe viel mehr interne Register als der 6502.
Klar kommen die Register nicht vollständig gegen den schnellen Buszugriff und die Zero-Page des 6502 an. Aber einfach x4 zu rechnen, das finde ich schon etwas einfach.
Ich habe früher neben 6502 auch viel 8085 und Z80 programmiert. Da kann man viel über die internen Register machen.
-
Ich habe früher neben 6502 auch viel 8085 und Z80 programmiert. Da kann man viel über die internen Register machen.
Der 6502 hat dafür sehr viele Adressierungsarten, die Zeropage z. B. kann praktisch als "Registersatz" betrachtet werden.
-
Ich habe früher neben 6502 auch viel 8085 und Z80 programmiert. Da kann man viel über die internen Register machen.
Der 6502 hat dafür sehr viele Adressierungsarten, die Zeropage z. B. kann praktisch als "Registersatz" betrachtet werden.
Zero-Page hatte ich ja geschrieben.
Trotzdem muss er ständig auf den Speicher zugreifen.
-
Trotzdem muss er ständig auf den Speicher zugreifen.
Was er eben in einem Takt schafft. Ein "ADC immediate" dauert wie viele Takte
längerkürzer als ein ADC ZP?[EDIT]
Rätselauflösung:
ADC # - 2 Takte.
ADC $ll - 3 Takte.
Der 6502 ist mit Addition des ZP-Registers fertig, da ist der 8080 noch mit der Dekodierung des Befehls beschäftigt. Da nützen alle Register der Welt nix.
[/EDIT]
-
Danke für die Info´s
Habe hier die Fragen gestellt, da ich ständig höre oder lese, die C64er CPU (1 MHz) wäre langsam..
Dabei für 1 MHz ist doch die Leistung ganz Ok, nicht war?
Wenn man sich Sam´s Journey anschaut.. Wahnsinn
MiC
-
Dabei für 1 MHz ist doch die Leistung ganz Ok, nicht war?
Wenn man sich Sam´s Journey anschaut.. Wahnsinn
Absolut!
Was man auch nicht vergessen darf: 8-Bit-Programmierer können noch programmieren, die brauchen nicht 500 MB Framework und einen 4 GHz-Achtkerner, weil sie "mal eben so auf Knopfdruck" in der IDE 50.000 Zeilen Code generieren mit dem Einfügen eines einzigen Objekts.
Wie schnell wären heutige CPUs, wenn sie so effizient programmiert würden wie Achbitter.
-
Wie schnell wären heutige CPUs, wenn sie so effizient programmiert würden wie Achbitter.
Und wieviele Bugs es erst gäbe in einer Software von den Ausmaßen von Photoshop... . Wobei aktuelle Compiler einen verflixt guten Job machen, schnellen Code zu erzeugen (wenn auch nicht unbedingt kleinen).
-
Ja, alles richtig. Aber ich gebe noch als letztes zu bedenken, dass 4 MHz die Standard-Frequenz eines Z80 war.
Alle Z80-Systeme, auf denen ich damals gearbeitet habe, liefen mit mindestens 4 MHz.
Die Standard-Taktfrequenz der 6502 war zur gleichen Zeit 1 MHz.
Es macht schon irgendwie Sinn, die Prozessoren bei den Frequenzen zu vergleichen, für die sie designt wurden.
-
Wie schnell wären heutige CPUs, wenn sie so effizient programmiert würden wie Achbitter.
Naja das ist jetzt so ne Sache .... prinzipiell natürlich korrekt, aber schau dir an, was heutige Computer alles tun ... von Hand optimieren würde kein Mensch mehr schaffen, dafür ist das Featureset viel zu groß. Vernünftigerweise wird da optimiert, wo wirklich viel herauszuholen ist (z.B. ffmpeg beinhaltet tatsächlich handgeschriebenen Assemblercode!). Mit dieser Herangehensweise kann man dann eigentlich auch einen ganz guten Kompromiss finden, jedenfalls wenn es nur um die Ausführungsgeschwindigkeit geht. In der Regel machen Compiler heutzutage nämlich auch einen richtig guten Job. Und das "Framework" mag riesig sein, unnötig langsam ist es deshalb noch lange nicht unbedingt ...
Dazu kommt natürlich der Leitsatz, dass Hardwareanschaffung in der Regel billiger ist als Softwareentwicklung. Für das Business ist in der Regel die Geschwindigkeit der Entwicklung viel relevanter als die der Ausführung Wir leben eben in anderen Zeiten.
Nichtsdestotrotz liebe ich es natürlich wie jeder "echte Programmierer" (hehe) einen alten 8-Bitter zu programmieren und dabei so viel wie möglich rauszuholen -- das macht auch heute noch Spaß
-
zrs1 Alles richtig, mir ist bewusst, dass mein Post sehr "schwarz-weiß" war.
Mittlerweile sollte ich ja einen Ruf weg haben als "Provokateur" ...