Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Technische Informatik (http://www.informatikerboard.de/board/board.php?boardid=7)
--- Aiken Code (http://www.informatikerboard.de/board/thread.php?threadid=2146)


Geschrieben von digital am 28.02.2015 um 16:08:

  Aiken Code

Meine Frage:
Hallo guten Tag ich verstehe gerade diese Aufgabe nicht

Entwerfen Sie eine Codewandler Schaltung welche die den dezimalen werten 5,6,7,8 entsprechenden codeworte des Aiken Code in die entsprechende Codeworte des BCD Code umwandelt .

Beachten sie dabei das die 16 möglichen Kombinationen des Aiken Code dabei nicht voll ausgenutzt werden !

Als Lösung genügt die Angabe der schaltalgebraischen Gleichung .

Kann mir jemand bitte erklären wie ich hier Vorgehen soll ?

Meine Ideen:
Keine



Geschrieben von digital am 28.02.2015 um 17:10:

 

5 als Aiken Code : 1011

6: 1100

7: 1101

8: 1110

Ich weiss aber gerade nicht wie ich weiter vorgehen soll?



Geschrieben von Karlito am 28.02.2015 um 17:31:

 

Hallo,

der erste Schritt ist sich bewusst zu machen, welcher Binärcode auf welchen anderen binärcode abgebildet werden soll.

Hier der entspreichende Ausschnitt (Quelle: Wikipedia)

[latex]<br />
\begin{array}{l|llll|llll}  & x_3 & x_2 & x_1 & x_0 & y_3 & y_2 & y_1 & y_0<br />
 \hline 5      & 1   & 0   & 1   & 1   & 1   & 0   & 1   & 0   <br />
 6      & 1   & 1   & 0   & 0   & 1   & 0   & 1   & 1   <br />
 7      & 1   & 1   & 0   & 1   & 0   & 1   & 1   & 1   <br />
 8      & 1   & 1   & 1   & 0   & 1   & 0   & 0   & 0   <br />
\end{array}<br />
[/latex]

Danach stellen wir für jede Binärstelle des Zielcodes die Gleichung auf. Dazu betrachtet macn, aus welcher Kombination von [latex]x_i[/latex] sich eine 1 für [latex]y_j[/latex] ergibt.

Ich mache das hier mal beispielhaft für [latex]y_3[/latex]:

[latex]<br />
y_3 = x_3\overline{x_2}x_1x_0 \vee x_3x_2\overline{x_1}\overline{x_0} \vee x_3x_2x_1\overline{x_0}<br />
[/latex]

Das wird für die weiteren [latex]y[/latex] wiederholt und die Formeln können dann noch mit KV-Diagrammen vereinfach werden. Die Vereinfachten Formeln bilden dann die Grundlage für die Schaltung.

Gruß,

Karlito



Geschrieben von digital am 28.02.2015 um 17:37:

 

Wie bist du genau auf die y Werte in deiner Tabelle gekommen ?

Muss ich die y Tabelle mir so merken ?



Geschrieben von Karlito am 28.02.2015 um 17:40:

 

Ich habe doch extra den Wikipedia-Artikel verlinkt. Darin steht die Zuordnung von Aiken auf BCD-Code. Und auch so, wenn du genau hin schaust, siehst du, dass der BCD-Code nichts weiter ist, als die Dezimalzahl binär kodiert (daher auch der Name Binary Coded Decimal - BCD).

Gruß,

Karlito



Geschrieben von Karlito am 28.02.2015 um 17:47:

 

Ich sehe gerade, ich habe einen Fehler gemacht. Die 5 und die 6 sind falsch kodiert.

Hier die korrigierte Variante:

[latex]<br />\begin{array}{l|llll|llll}  & x_3 & x_2 & x_1 & x_0 & y_3 & y_2 & y_1 & y_0<br />
 \hline 5      & 1   & 0   & 1   & 1   & 0   & 1   & 0   & 1   <br />
6      & 1   & 1   & 0   & 0   & 0   & 1   & 1   & 0<br />
7      & 1   & 1   & 0   & 1   & 0   & 1   & 1   & 1   <br />
8      & 1   & 1   & 1   & 0   & 1   & 0   & 0   & 0   <br />\end{array}<br />[/latex]

Demnach ist die Formel auch falsch und lautet:
[latex]<br />y_3 = x_3x_2x_1\overline{x_0}<br />[/latex]

Gruß,

Karlito



Geschrieben von digital am 28.02.2015 um 18:11:

 

Achso du hast auf der rechten Seite einfach den Bc code übernommen oder ?

Wirkt einfach großes Grinsen großes Grinsen

[latex] y_3 = x_3*x_2*x_1*\vec{x_0}  [/latex]

[latex] y_2 = x_3*\vec{x_2} *x_1*x_0 +x_3*x_2*\vec{x_1}*x_0   [/latex]

[latex] y_1 = x_3*x_2*\vec{x_1} *\vec{x_0} +x_3*x_2*\vec{x_1} *x_0   [/latex]

[latex] y_0 = x_3*\vec{x_2} *x_1*x_0+x_3*x_2*\vec{x_1} *x_0   [/latex]

y1 habe ich mal versucht zu vereinfachen ,weiter komme ich nicht :

[latex] y_1= x_3*x_2*( \vec{x_1}*\vec{x_0} +\vec{x_1} *x_0)   [/latex]

Wie könnte ich es weiter verinfachen ?



Geschrieben von digital am 28.02.2015 um 18:14:

 

[latex] y_2 = x_3*\vec{x_2} *x_1*x_0 +x_3*x_2*\vec{x_1}* \vec{x_0} + x_3*x_2 * \vec{x_1}*x_0[/latex]


y_2 hatte ich leider falsch gepostet.



Geschrieben von eulerscheZahl am 28.02.2015 um 18:25:

 

Mit deiner Ergänzung sieht es gut aus.

Vereinfachen kannst du entweder mittels KV-Diagramm, wie Karlito schon sagte.
Oder einfach durch hinschauen: [latex]y_0 = x_0[/latex]
Das gilt zumindest für die 4 Fälle, die du behandeln sollst, der Rest kann dir egal sein.



Geschrieben von digital am 28.02.2015 um 18:31:

 

Wieso ist denn y_0 = x_0

Kannst du mir das ein wenig erklären ?

Und bitte auch ein wenig genauer erklären wie man weiter vorgehen müsste ?



Geschrieben von eulerscheZahl am 28.02.2015 um 18:39:

 

Schau dir einfach die Tabelle oben an:
Für die interessanten Fälle (5-8) sind [latex]x_0[/latex] und [latex]y_0[/latex] gleich - daher die Aussage.
Das war der leichteste Teil, ist aber auch für den Rest machbar.

Wenn dir das zu kompliziert ist: KV Diagramme. Hast du davon schon gehört, oder sind die komplett unbekannt?



Geschrieben von javaneu am 28.02.2015 um 19:08:

 

Ich habe nicht so viel Ahnung von Kv Diagrammen obwohl wir das behandelt haben .

Kann ich eigentlich meine y1 Gleichung noch weiter vereinfachen nach dem ausklammern ?


Oder brauche ich das gar nicht mehr ?



Geschrieben von javaneualias digital am 28.02.2015 um 19:15:

 

java neu alias digital.

Leider habt ihr doch nur einen Kunden großes Grinsen



Geschrieben von eulerscheZahl am 28.02.2015 um 19:18:

 

Du kannst noch [latex]\overline{x_1}[/latex] ausklammern.
Dann bleibt in der Klammer [latex]x_0 + \overline{x_0}[/latex], was 1 ergibt.
Mehr geht nicht.

Grund dafür: es gibt Einträge, (alles außer 5-8), die egal sind. Du nimmst an, dass diese 0 sein müssen, während sie bei mir auch 1 sein können. Daher kann ich mehr vereinfachen.



Geschrieben von digital am 28.02.2015 um 19:30:

 

Gut dann habe ich für y1 das stehen:

[latex]y_1 = x_3*x_2*\overline{x_1}[/latex]

y0 habe ich so vereinfacht:

[latex] y_0 = x_0*(x_3*\overline{x_2}*x_1) +\overline{x_1}*x_2*x_3 [/latex]

[latex] y_0 = x_0*(x_3*(\overline{x_2}*x_1+\overline{x_1}*x_2)) [/latex]

Weiter komme ich nicht .

Geht hier auch noch was ?


Forensoftware: Burning Board, entwickelt von WoltLab GmbH