Konstruera ett kombinatoriskt nät
Hej,
har en uppgift enligt bild nedan.
Jag är helt förvirrad redan från start. Det står att funktionen ska utföra 10-X. Här tänker jag att jag på något sätt ska ha en grind som subtraherar, men vad jag vet finns det ju ingen sådan.
Därefter funderar jag på hur jag ska kunna ange talet 10 på det sättet uppgiften vill.
Antagligen tänker jag för krångligt än vad det behöver vara.
Ställ upp en tabell för alla möjliga input och vad output ska bli. När det är gjort kan du strunta i att det är tänkt att representera decimaltal.
Jag kallar utsignalerna för y.
x0 x1 x2 x3 y0 y1 y2 y3
0 0 0 0 1 0 1 0
0 0 0 1 1 0 0 1
osv.
Du får hitta på vad som ska hända om X > 10.
Input är jag med på, dvs 0-15 i binärt. Men hur vet jag vad utsignalen blir? Hur blev din första output 1010?
Kodning BCD betyder Binary Coded Decimal vilket betyder att X kan vara 0-9 i binärkodning.
1010 motsvarar 10-0 dvs 10
binary skrev:Input är jag med på, dvs 0-15 i binärt. Men hur vet jag vad utsignalen blir? Hur blev din första output 1010?
Jag vände på det, ser jag. Min rubrik skulle ha varit
x3 x2 x1 x0 y3 y2 y1 y0
På första raden är X = 0, och därmed Y = 10. 10 binärt är 1010.
Vad beträffar BCD så är det nog så att man bara går upp till 9, så vad som händer för X>9 kan få vara odefinierat här.
Vid närmare eftertanke kan det vara så att NBCD är 0-9, BCD är 0-15.
Du får kolla i nån lärobok i ämnet.
x3 x2 x1 x0 y3 y2 y1 y0
Fixa komplett tabell, sedan
osv. :-)
Fixa komplett tabell
Sedan ringar du in ettorna kolumnvis i kolumn y1, y2 och y3
Då inser du snart hur jag definierade y1
Sedan gör du på liknande sätt med y2 och y3
Tack för alla svar. Ska gå igenom allt i helgen, har haft fullt upp med tentor.