Wie setzt man Multiplikation im Intel 4004-Assembler um?

OP #3319431
Lesenswert?
• ▲
▼
Guten Tag Liebe Leute,

es geht um für Sie tatsächlich sehr einfach für mich eine rätselhafte 
Aufgabe. Ich sollte für meine Hausarbeit ein Unterprogramme/Code 
analysieren, der  Multiplikation im Intel 4004-Assembler durchführt. 
Dafür sollte ich dieses Programm/Code schreiben oder finden. Leider habe 
ich das nirgendwo gefunden.

Könnte jemand bitte helfen? und dieses Program finden oder im Assembler 
schreiben? Emulator ist unter diesem Link erreichbar.

http://e4004.szyc.org/asm.html

(Intel 4004 kann 4-bit-Zahlen addieren. Multiplizieren ist auf dem Intel 
4004 nur durch wiederholte Addition möglich.)
#3319456
Lesenswert?
• ▲
▼
ceren t. schrieb:
> (Intel 4004 kann 4-bit-Zahlen addieren. Multiplizieren ist auf dem Intel
> 4004 nur durch wiederholte Addition möglich.)

Da hast du doch deine Lösung.

Für x=a*b mit a=3 und b=4 machst du folgendes (Pseudoassembler):
1
sprungmarke:
2
add x, a
3
dec b
4
cmp b, 0
5
jnz sprungmarke

Damit kannst du problemlos eine 4Bit-Multiplikation mit 8Bit-Ergebnis 
durchführen. Jetzt muss nur noch ein eventuell auftretender Overflow 
abgefangen werden.
OP #3319539
Lesenswert?
• ▲
▼
Also ich stamme aus anderen Fachbereich nämlich Medienwissenschaft. 
Bisher habe ich mich nicht mit solchen Aufgaben, überhaupt mit der 
Mikroprozessoren oder Programmieren beschäftigt.

Ich weiß es sogar nicht wonach ich genau suche. Ich verstehe nur das 
Prinzip und muss ich auch nur das in meiner Hausarbeit erklären.Dafür 
aber brauche ich den "Gegenstand" nämlich das Programm. Es geht nicht in 
meiner Hausarbeit um Programmieren.

Ich bin kein Programmierer und werde ich auch nicht eins. Da hier ein 
Experten-Forum ist, habe ich mich an Euch gewendet.
#3319555
Lesenswert?
• ▲
▼
ceren t. schrieb:
> ch weiß es sogar nicht wonach ich genau suche. Ich verstehe nur das
> Prinzip und muss ich auch nur das in meiner Hausarbeit erklären.Dafür
> aber brauche ich den "Gegenstand" nämlich das Programm. Es geht nicht in
> meiner Hausarbeit um Programmieren.

Du kannst uns viel erzählen, es ist trotzdem deine Hausarbeit, also ist 
der Aufgebende der Meinung du hast genug in der Vorlesung gelernt um sie 
zu lösen.
Im Endeffekt läuft es immer darauf hinaus daß jemand wieder zu faul ist 
seine Hausaufgaben selbst zu machen!

Und das führt in diesem Forum zu:
Beitrag "Einheitlicher Umgang mit faulen Schülern etc.?"

Die Oberfrechheit ist der Link zu einem Emulator ohne auch nur selbst 
den Versuch gemacht zu haben wenigstens einen Teil zu lösen!

Als konstruktiven Tipp:
Das Programm macht nichts weiter als wenn du eine schriftliche 
Multiplikation durchführst wie du sie in der 4. Klasse in Mathe gelent 
hast.
Nur eben mit Binärzahlen

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.