Digitaltechnik Fragen Teil 2 < Elektrotechnik < Ingenieurwiss. < Vorhilfe
|
Aufgabe 1 | Aufgabe 1
Ein Messsystem erfasst Spannungswerte und sendet sie an eine Aufzeichnungseinheit. Die Messwerte haben eine Auflösung von 4 Bit inklusive 1 Bit für die Nachkommastelle. Negative Zahlen werden als Zweierkomplement dargestellt.
a) Welchen Spannungsbereich kann das Messsystem darstellen ?
b) Das System liefert die folgenden Binärzahlen. Berechnen Sie die gemessenen Spannungswerte dazu:
- 0010
- 1110
- 1000
- 1111
c) Welche Binärzahlen gibt das System für folgende Messwerte aus ?
- 1,5V
- -2,0V
- -3,5V
- 2,5V |
Aufgabe 2 | DS1847 ist ein digitaler Widerstand mit integrierter Temperaturkompensation. Die aktuell gemessene Temperatur wird mit insgesamt 13 Bits in zwei 8 Bit Registern gespeichert. Die Bitbelegung der Register sieht folgendermaßen aus:
Bit 15 = [mm] 2^8
[/mm]
Bit 14 = [mm] 2^7
[/mm]
Bit 13 = [mm] 2^6
[/mm]
Bit 12 = [mm] 2^5
[/mm]
Bit 11 = [mm] 2^4
[/mm]
Bit 10 = [mm] 2^3
[/mm]
Bit 09 = [mm] 2^2
[/mm]
Bit 08 = [mm] 2^1
[/mm]
Bit 07 = [mm] 2^0
[/mm]
Bit 06 = [mm] 2^{-1}
[/mm]
Bit 05 = [mm] 2^{-2}
[/mm]
Bit 04 = [mm] 2^{-3}
[/mm]
Bit 03 = [mm] 2^{-4}
[/mm]
Bit 02 = 0
Bit 01 = 0
Bit 00 = 0
Eine negative Temperatur wird in Form des Zweierkomplements dargestellt.
Welche Temperaturen werden durch folgende Daten repräsentiert?
- [06 50]hex
- [04 88]hex
- [01 E0]hex
- [FF 60]hex
- [FE B0]hex |
Habe hier nochmals ein Übungsblatt ohne Lösungen gefunden und hoffe, dass ihr mir beim Korrigieren helfen könntet. Bzw. ihr mich korrigiert. Habe erstmal nur 2 Aufgaben gepostet.
Aufgabe 1:
a) Da 1 Bit für die Kommastelle benötigt wird, kann der positive Bereich nur bis maximal 7,5V gehen.
Nun habe ich erstmal aufgestellt, wie die Bits zu allen positiven Spannungswerten aussehen.
+ 0,0V -> 0000
+ 0,5V -> 0001
+ 1,0V -> 0010
+ 1,5V -> 0011
+ 2,0V -> 0100
+ 2,5V -> 0101
+ 3,0V -> 0110
+ 3,5V -> 0111
+ 4,0V -> 1000
+ 4,5V -> 1001
+ 5,0V -> 1010
+ 5,5V -> 1011
+ 6,0V -> 1100
+ 6,5V -> 1101
+ 7,0V -> 1110
+ 7,5V -> 1111
Da wir aber auch negative Spannungen messen möchten, müssen wir die Tabelle "teilen", also gehen wir im postiven Bereich nur bis 3,5V und nehmen uns den Rest der Bits für den negativen Bereich:
- 4,0V -> 1000
- 3,5V -> 1001
- 3,0V -> 1010
- 2,5V -> 1011
- 2,0V -> 1100
- 1,5V -> 1101
- 1,0V -> 1110
- 0,5 V -> 1111
Falls wir die 0V aber nicht "haben" möchten, könnten wir 0000 für etwas anderes verwenden. Ich bin mir allerdings nicht sicher ob ich das richtig gemacht habe. Falls doch, könnten wie die Aufgabe b) und c) einfach an meiner Tabelle ablesen.
Aufgabe 2:
Hier sollte ich vllt. zuerst mal die Hexadezimalen Werte in Dezimalzahlen umwandeln, so erkenne ich auch um welche Werte es sich eigentlich handelt:
- [06 50]hex -> [mm] 0*16^0 [/mm] + [mm] 5*16^1 [/mm] + [mm] 6*16^2 [/mm] + [mm] 0*16^3 [/mm] = 1616
- [04 88]hex -> [mm] 8*16^0 [/mm] + [mm] 8*16^1 [/mm] + [mm] 4*16^2 [/mm] + [mm] 0*16^3 [/mm] = 1160
- [01 E0]hex -> [mm] 0*16^0 [/mm] + [mm] 14*16^1 [/mm] + [mm] 1*16^2 [/mm] + [mm] 0*16^3 [/mm] = 480
- [FF 60]hex -> [mm] 0*16^0 [/mm] + [mm] 6*16^1 [/mm] + [mm] 15*16^2 [/mm] + [mm] 15*16^3 [/mm] = 65376
- [FE B0]hex -> [mm] 0*16^0 [/mm] + [mm] 11*16^1 [/mm] + [mm] 14*16^2 [/mm] + [mm] 15*16^3 [/mm] = 65200
Nun frage ich mich weshalb ich nur so riesen Werte habe.....Was genau bedeutet die Leerzeile bei: [06 50] ? Hier komme ich leider nicht weiter.Soll ich nun die Dezimalzahlen in Dualzahlen umwandeln, oder was ? Und dann ? Stellenweise zuordner zu [mm] 2^0, 2^1, 2^2 [/mm] etc. ?!?!....Das größte Problem für mich ist oft die Fragestellung überhaupt zu verstehen.....
Wäre nett wenn ihr mir weiterhelfen könntet.
Gruß Rudi
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 08:52 Sa 17.01.2015 | Autor: | Infinit |
Hallo Rudi,
in der ersten Aufgabe steht ja, dass mit einem Zweierkomplement gerechnet wird und dies schließt natürlich die Null mit ein. Die Null zählt dabei definitionsgemäß zu den positiven Zahlen und wird bei Dir demzufolge (inklusive Nachkommastelle) als 0000 dargestellt.
Bei der zweiten Aufgabe werden die Werte in zwei Registern gespeichert. Ein einfaches Umrechnen in Dezimalzahlen (oder auch direkt in Dualzahlen, wie ivh es in meinem anderen Beitrag vorgeführt habe), hilft Dir direkt nicht weiter, denn Du brauchst die Wertigkeit der einzelnen Stellen. Diese sind ja aber durch die Tabelle gegeben, der Wert des Bits 5 gehört zur Potenz [mm] 2^{-2} [/mm], der Wert des Bits 12 zu [mm] 2^5 [/mm] usw. usw. Es ist nicht gefordert, den Wert in einer Dezimalzahl anzugeben, bleibe also der Einfachheit halber im Dualsystem.
Viele Grüße,
Infinit
|
|
|
|
|
Aufgabe | Aufgabe 2
DS1847 ist ein digitaler Widerstand mit integrierter Temperaturkompensation. Die aktuell gemessene Temperatur wird mit insgesamt 13 Bits in zwei 8 Bit Registern gespeichert. Die Bitbelegung der Register sieht folgendermaßen aus:
Bit 15 = $ [mm] 2^8 [/mm] $
Bit 14 = $ [mm] 2^7 [/mm] $
Bit 13 = $ [mm] 2^6 [/mm] $
Bit 12 = $ [mm] 2^5 [/mm] $
Bit 11 = $ [mm] 2^4 [/mm] $
Bit 10 = $ [mm] 2^3 [/mm] $
Bit 09 = $ [mm] 2^2 [/mm] $
Bit 08 = $ [mm] 2^1 [/mm] $
Bit 07 = $ [mm] 2^0 [/mm] $
Bit 06 = $ [mm] 2^{-1} [/mm] $
Bit 05 = $ [mm] 2^{-2} [/mm] $
Bit 04 = $ [mm] 2^{-3} [/mm] $
Bit 03 = $ [mm] 2^{-4} [/mm] $
Bit 02 = 0
Bit 01 = 0
Bit 00 = 0
Eine negative Temperatur wird in Form des Zweierkomplements dargestellt.
Welche Temperaturen werden durch folgende Daten repräsentiert?
- [06 50]hex
- [04 88]hex
- [01 E0]hex
- [FF 60]hex
- [FE B0]hex |
HAllo,
also ganz habe ich es noch nicht verstanden, aber ich mache es mal so weit wie ich komme:
- [06 50]hex = 0000 0110 0101 0000
- [04 88]hex = 0000 0100 1000 1000
- [01 E0]hex = 0000 0001 1110 0000
- [FF 60]hex = 1111 1111 0110 0000
- [FE B0]hex = 1111 1110 1011 0000
Sind das jetzt insgesamt 10 temperauren ? oder wie kann ich bsp. 0000 0110 0101 0000 in PLUS und MINUS aufteilen ? ich verstehe die aufgabe nicht ganz.
0000 0110 0101 0000 :
0000 0110 = 6 positiv
UND
0101 0000 = negativer teil, da zweierkomplement -> +1 rückgängig machen -> 0100 1111 -> invertieren, 1011 0000 -> 176 = -176
aber die negativen exponenten stellen doch eigentlich kommazahlen da, anstatt negative werte ?!?
teile ich die 16 bits auf in den ganzen teil und rationalen teil, wäre
0000 0110 = +6
0101 0000 = [mm] 2^{-1} [/mm] + [mm] 2^{-3} [/mm] = 0,625
0000 0110 0101 0000 = 6,625
Nur wie sollen denn negative Temperaturen auftreten ?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 16:38 So 18.01.2015 | Autor: | Infinit |
Hallo Rudi,
das Bit 15 mit der höchsten Wertigkeit entscheidet darüber, da es sich um eine Zahl in Darstellung eines Zweierkomplements handelt, ob die Temperatur positiv oder negativ ist. Eine "0" bei Bit 15 deutet auf eine positive Temperatur hin, eine "1" bei Bit 15 ist eindeutig dann eine negative Temperatur.
In Deiner Beispielliste, die Du umrechnen sollst, stehen insgesamt 5 Temperaturwerte, die ersten drei sind positiv, die letzten zwei negativ.
Da das Bit 15 zur Wertigkeit [mm] 2^8 [/mm] gehört, sind also die folgenden ganzzahligen Temperaturen darstellbar (hinzu kommt dann jeweils der Nachkommaanteil, also die Wertigkeit der Bits 6 bis 3):
[mm] -(2^7) = - 127 [/mm] Grad bis demzufolge [mm] (2^7) -1 = 126 [/mm] Grad.
Dein erstes Beispiel (die Zweierpotenzen habe ich mal druntergeschrieben):
0 0 0 0 0 1 1 0 0 1 0 1 0 0 0 0
8 7 6 5 4 3 2 1 0-1-2-3-4
Bit 15 ist Null, also eine positive Temperatur von
[mm] 2^3 + 2^2 +2^{-1} + 2^{-3} = 12,625 [/mm] Grad
Wie läuft das nun bei [FF 60]hex?
Umwandeln in Dualzahl liefert
1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0
Bit 15 ist eine 1, also handelt es sich um eine negative Temperatur. Also muss man als nächstes das Zweierkomplement rückgängig machen.
Eigentlich müsste man 1 subtrahieren und das Ergebnis negieren, einfacher ist es aber, zunächst zu negieren und dann eine 1 zu addieren.
Also erst negieren:
0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1
jetzt eine 1 dazuaddieren (natürlich an der richtigen Stelle bei Bit 7) bringt uns zu
0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 +
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 =
0 0 0 0 0 0 0 1 0 0 0 1 1 1 1 1
8 7 6 5 4 3 2 1 0-1-2-3-4
Das rückgewandelt nach dem ersten Beispiel ergibt
- ([mm] 2^1 + 2^{-3} + 2^{-4}) = -2,1875 [/mm] Grad
Ich hoffe, die Beispiele helfen beim Verständnis, ein Rechner kann dies auf jeden Fall schneller als wir Menschen
Viele Grüße,
Infinit
|
|
|
|
|
erstmal vielen dank, nun verstehe ich deine aussage zwar, aber wie komme ich darauf, dass die 1. stelle das vorzeichen bestimmt ?!?
ich kenne 3 methoden um negative zahlen darzustellen:
1. mit separaten vorzeichenbit
2. einerkomplement
3. zweierkomplement
allerdings hat der aufgabensteller doch nicht von "separaten vorzeichenbit" erwähnt ?!?
achso, oder ist es ähnlich wie bei den ersten aufgaben die ich gemacht habe, bei denen ich meine ganzen zahlen aufgeteilt habe:
0000
0001
0010
0011
...
...
alle positive
1000
1001
1010
1011
..... alle negativ ..
also haben die dort das gleiche prinzip angewendet?!? alle möglichen dualzahlen "geteilt" und die hälfte, die mit 1 anfangen für meine negativen werte genommen und die mit 0 anfangen, für meine positiven werte ?
nur hatte ich ja bei meiner tabelle die 1-zahlen zwar für negative werte genommen, allerdings nicht als zweierkomplement.
gruß Rudi
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 17:20 Mo 19.01.2015 | Autor: | Infinit |
Hallo Rudi,
da brauche ich nicht mehr viel zu erklären, denn die Erklärung hast Du Dir bereits selbst gegeben.
Im Aufgabentext steht explizit drin:
"Eine negative Temperatur wird in Form des Zweierkomplements dargestellt."
Also ist eine "1" am höchstwertigen Bit der Hinweis auf eine negative Temperatur.
Viele Grüße,
Infinit
|
|
|
|