Sida 1 av 2
Digitalteknik/digitalakretsar frågor!
Postat: 23 augusti 2012, 18:56:30
av makrocell
.
Re: Digitalteknik/digitalakretsar frågor!
Postat: 23 augusti 2012, 21:05:40
av jesse
a) X*Y=X*Z ---> Y=Z
märklig fråga. Vad betyder tecknen + och * ?
Om det är vanlig addition och multiplikation så är det ju helt irrelevant om talen är "binära", eller representeras på ett annat sätt. matematiken är densamma, och i så fall gäller resonemanget så länge X inte är 0. Beviset för det hör knappast hemma i digitalteknik utan snarare i "linjär algebra".
Om det betyder AND och OR så är ju frågan: vadå "binära tal"? Är det flera bitar och + och * är bitvisa operander (som i programmeringsspråket C)....
Har jag missuppfattat totalt vad det här handlar om?

Re: Digitalteknik/digitalakretsar frågor!
Postat: 23 augusti 2012, 21:10:10
av sodjan
Syftet med ett prov i digitalteknik är väl att "mäta" dina kunskaper,
inte kolla snabbt man kan få svar på ett forum. Men jag är väl
bara gammalmodig...

Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 07:38:29
av Klas-Kenny
Fråga ett: Gör en sanningstabell över de båda så ser du om det stämmer och får bevis på det.
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 10:31:46
av makrocell
Antar att det menas att variablerna bara kan anta värde 1 eller 0.
Har fått lite hjälp men tänker så här!
a)
Om vi sätter X=1, Y=1 och Z=0. Då är X+Y=1 och X+Y=1 men Y!=Z.
b) på samma sätt här genom att sätta X=0, Y=0 och Z=1?
Då är ju X*Y=0 och X*Z=0 men Y!=Z Eller?
Klas-Kenny: Hur gör jag en sanningstabell när jag inte vet vad variablerna ska vara (dum fråga kanske)? Hur menar du?
Tack för svar för övrigt!
/makrocell
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 10:42:27
av jesse
>Antar att det menas att variablerna bara kan anta värde 1 eller 0.
OK, boolsk algebra med andra ord.
Och du löser ju uppgiften bra!
Adderaren verkar svårare...
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 10:46:35
av prototypen
Halv adderaren består av en EX-OR grind (går att realisera med NAND grindar) för summan och en AND för carry.
Heladderaren består av lite fler pryttlar.
Se på Wikipedia
http://sv.wikipedia.org/wiki/Adderare
Protte
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 11:36:39
av makrocell
Tack för feedback!
Angående heladderaren är problemet inte att konstruera adderaren utan att visa hur man kan subtrahera med den. Bifogade "min" heladderare (kan göras sjukt mycket snyggare med andra grindar men det spelar ingen roll här). Den kommer från att göra karnaughdiagram av funktionstabellen för en heladderare.
Mina uttryck:
S = AB'Cin' + A'B'Cin + ABCin + A'BCin'
Cut = ACin + BCin + AB
Man kan subtrahera genom addera ett så kallat 2-komplementet till talet.
2-komplement till binärtal kan bildas enligt reglen:
1. Invertera samtliga bitar i talet.
2. Addera 1 till det inverterade talet.
Då undrar jag hur jag ska visa detta på kretsen? 1) Är det bara att invertera A och B innan allt (innan "fyrkanten")? 2) Läste att ettan kan adderas i den minst signifikanta positionen i additionsenheten, tex. vid ingången för Cin. Kan man använda en halvadderare där då?
Väldigt tacksam för svar!
/makrocell
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 11:46:44
av swesysmgr
Du skall väl bara tvåkomplementera det ena talet som sedan adderas till det andra för att få en subtraktion?
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 11:53:45
av makrocell
Okej ja det låter ju iofs rimligt
Men så om vi vill subtrahera A med B så inverteras B (innan allting?) och sedan adderas talen ihop inne i heladderaren men det saknas en 1:a som ska ha adderats vid exempelvis Cin? Är det rätt tänkt? Om det är rätt hur adderas smidigast 1:an in vid Cin? Hur ritar man om kretsen?
/makrocell
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 11:57:07
av Nerre
Det syns väl om man gör en sanningstabell?
En subtraherare använder väl "borrow" istället för "carry"?
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 12:00:12
av sodjan
4-2 == 4 + (-2).
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 12:03:49
av jesse
Sodjan: Ja, men det handlar om att först omvandla talet 2 till -2.
C-in vid bit 0 är väl alltid en nolla vid addition. Vill du ha en etta där så inverterar du väl den också, precis som du gör med bitarna i B. Vill du kunna växla mellan att addera eller subtrahera kan du sätta XOR-grindar på alla ingångar för B samt på Carry-ingången på adderaren för bit 0. Sedan kopplar du ihop den extra ingången på alla XOR-grindar med varandra och drar ut den till en omkopplare som ger 0 eller 1. nolla ger addition och etta ger subtraktion. Kommer det att fungera?
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 12:51:22
av makrocell
Men stämmer det att Cin alltid är 0 för denna adderare? Om vi utgår från funktionstabellen kan ju även Cin vara ett även för en adderare som adderar enbitars tal. Eller hur ska man tänka? Känner mig sjukt retarderad nu!
Om vi vill addera 1 +1 (är väl den enda intressanta additionen vi kan göra med 1 bit?) så blir s=0 och cut=1. Vad händer sen? Varför ha Cin som en insignal i den enklaste adderaren? Uppgiften var ju att konstruera en adderare med godtyckligt antal bitar så denna lösning borde ju vara okej. Om då Cin alltid är 0 är det ju bara att invertera den som jesse sa?
Jag behöver inte ha en lösning som ska kunna utföra båda räknesätten med hjälp av en styrsignal, även om det är sjukt mycket snyggare.
Hur ska kretsen se ut för att subtrahera dessa två tal (A & B) är väl helt enkelt frågan? Subtraherar den här kretsen A med B?
från wiki:
"En heladderare (kort FA, från engelska Full Adder) är en digital komponent för addition av två (egentligen tre) bitar. Eftersom den är en digital komponent kan den bara arbeta med de diskreta värdena 1 och 0. Heladderaren tar tre insignaler x, y och cin (carry in), som den adderar, och lämnar två utsignaler s ((entals)summan) och cout (carry out, minnessiffra (som är 2-värd)).
Heladderaren kan kopplas ensam eller i kedja av flera adderare för att kunna addera två binära tal som består av fler än 1 bitar vardera. För att addera två tal med n stycken bitar, krävs n stycken heladderare. Då används cin och cout för att hålla koll på minnessiffrorna."
Re: Digitalteknik/digitalakretsar frågor!
Postat: 24 augusti 2012, 12:58:56
av Nerre
Kopplar du ihop två adderare för att kunna addera 2-bitars tal så tror jag du ser tydligare. Det blir ibland lite förvirrande att bara titta på 1-bits additioner.
Cin i LSB (den minst signifikanta biten) är normalt alltid 0.
Cout är den "extra bit" som behövs eftersom addition av två binära tal kan ge ett resultat som inte ryms i samma antal bitar. 11 + 11 blir ju (1)10 där ettan inom parantes är carry.