Aritmètica binària
Les operacions es realitzen de la mateixa forma que en sistema decimal, però, a causa de la senzillesa del sistema binari, es poden fer algunes simplificacions.
Els sistemes digitals (ordinadors, calculadores, autòmats programables…) són capaços de fer operacions aritmètiques amb dades expressades en sistema binari.
Suma en sistema binari
Les possibles combinacions de la suma binària són:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 0, i en porto una
Les tres primeres combinacions són evidents. Però la suma d’1+1, que en decimal sabem que és 2, s’ha d’escriure en binari amb dos dígits (10). Per tant, la suma d’1+1 és 0 i s’arrossega una unitat que se suma a la següent posició a l’esquerra.
Quin és el resultat de sumar els nombres binaris 1011 i 0110?
Fent la suma segons les regles de la suma binària obtenim:
Podeu observar que el resultat té cinc dígits perquè arrosseguem un 1.
Complement a un i complement a dos d'un nombre binari
El complement a un i el complement a dos són dues eines matemàtiques que faciliten molt les tasques aritmètiques en el sistema binari, sobretot la realització de restes i el treball amb nombres negatius.
La mateixa operació però en sistema decimal hauria estat: 11 + 6 = 17.
Complement a un d'un nombre binari
El complement a un (C1) d’un nombre binari és el nombre resultant d’invertir els uns i els zeros d’aquest nombre.
Per exemple, el complement a un del nombre 1101 és el nombre 0010.
Complement a dos d'un nombre binari
El complement a dos (C2) d’un nombre binari és el nombre resultant de sumar 1 al seu complement a un. És a dir, C2 = C1 + 1.
Per exemple, per calcular el complement a dos del nombre binari 1001 primer calculem el seu complement a un invertint uns i zeros. Ens dóna el nombre 0110. A aquest complement a un li sumem una unitat i ja tenim el complement a dos: 0110 + 1 = 0111.
Generalment s’assumeix que el C2 és la manera de representar el negatiu d’un número binari.
Resta en sistema binari
La resta de dos nombres binaris pot obtenir-se sumant al minuend el complement a dos del subtrahend.
Recordeu...
… que en una resta de dos nombres A - B, el nombre A s’anomena minuend i el nombre B s’anomena subtrahend.
Per exemple, fem la resta 1011011 - 0101110:
- Primer calculem el complement a un del subtrahend: 0101110 → 1010001.
- A continuació calculem el complement a dos d’aquest: 1010001 + 1 = 1010010.
- Finalment sumem el minuend amb el complement a dos del subtrahend.
En el resultat de la suma ens sobra un bit, ja que arrosseguem un 1 per l’esquerra. Però com que el nombre resultant de la resta no pot ser més gran que el minuend, el bit sobrant s’ignora. Per tant: 1011011 - 0101110 = 0101101.
Podeu comprovar que si “traduïm” la resta binària 1011011 - 0101110 = 0101101 a decimal ens dona: 91 - 46 = 45.
Una altra manera de fer restes en sistema binari és plantejant-les com en el sistema decimal. Com que el sistema binari només té 2 estats, les quatre possibles restes que tenim són 0 - 0, 1 - 0, 1 - 1 i 0 - 1; tres són evidents:
- 0 - 0 = 0
- 1 - 0 = 1
- 1 - 1 = 0
Però, per la resta 0 – 1 obtindríem un resultat negatiu de - 1. Perquè això no passi, igual que en el sistema decimal, agafem una unitat prestada de la posició següent: 0 – 1 → 10 - 1. Aquesta unitat prestada s’ha de retornar, sumant-la, a la posició següent. Seguint l’exemple anterior, 1011011 - 0101110:
Començant per la dreta, les operacions que cal fer són:
- 1 - 0 = 1
- 1 - 1 = 0
- 0 - 1 = 1 i agafem una unitat prestada al següent.
- 1 - 1 = 0, però com que havíem agafat una unitat prestada, ara fem 0 - 1 = 1 i agafem una unitat prestada al següent.
- 1 - 0 = 1, però com que havíem agafat una unitat prestada, ara fem 1 - 1 = 0.
- 0 - 1 = 1 i agafem una unitat prestada al següent.
- 1 - 0 = 1, però com que havíem agafat una unitat prestada, ara fem 1 - 1 = 0.
Veiem que el resultat de fer la resta és 0101101, igual que en l’exemple anterior.
Representació de nombres negatius en sistema binari
Amb el sistema decimal, els nombres negatius es representen senzillament precedint-los amb el signe -. En canvi, en el sistema binari no s’utilitza el signe sinó que es fan servir altres mètodes. El mètode més utilitzat és el del complement a 2 (C2).
Els nombres positius es representen amb el sistema de numeració binari normal, i els nombres negatius es representen amb el sistema de numeració binari en complement a dos.
Altres representacions de nombres negatius binaris
Hi ha altres mètodes per representar nombres negatius en sistema binari (el mètode de signe i magnitud, el mètode de complement a un, el mètode d’excés N…), però no són tan utilitzats com el mètode de complement a dos.
En la taula es mostra la representació binària des del -128 fins al +127. Si us hi fixeu, el bit de més pes sempre és zero per als nombres positius i sempre és u per als nombres negatius. Aquest bit de més pes s’anomena bit de signe, perquè ens indica si el nombre és positiu (bit de signe a zero) o negatiu (bit de signe a un). La resta de bits s’anomenen magnitud.
| Decimal | Signe | Magnitud | Codi |
|---|---|---|---|
| +127 | 0 | 111 1111 | Natural |
| +126 | 0 | 111 1110 | Natural |
| +125 | 0 | 111 1101 | Natural |
| +124 | 0 | 111 1100 | Natural |
| … | 0 | … | Natural |
| +5 | 0 | 000 0101 | Natural |
| +4 | 0 | 000 0100 | Natural |
| +3 | 0 | 000 0011 | Natural |
| +2 | 0 | 000 0010 | Natural |
| +1 | 0 | 000 0001 | Natural |
| 0 | 0 | 000 0000 | Natural |
| -1 | 1 | 111 1111 | C2 |
| -2 | 1 | 111 1110 | C2 |
| -3 | 1 | 111 1101 | C2 |
| -4 | 1 | 111 1100 | C2 |
| -5 | 1 | 111 1011 | C2 |
| … | 1 | … | C2 |
| -125 | 1 | 000 0011 | C2 |
| -126 | 1 | 000 0010 | C2 |
| -127 | 1 | 000 0001 | C2 |
| -128 | 1 | 000 0000 | C2 |
Àlgebra de Boole
-

- George Boole (1815-1864), matemàtic i filòsof britànic. Va desenvolupar l'anomenada àlgebra de Boole com una eina per analitzar la ment humana. L'aplicació als sistemes digitals va ser posterior.
L’àlgebra de Boole es basa en el següent:
- Un conjunt d’elements que únicament poden tenir dos valors possibles i que anomenarem 0 i 1.
- Tres operacions que anomenarem suma lògica, producte lògic i negació.
Un element qualsevol de l’àlgebra de Boole es representa amb una lletra que s’anomena variable booleana o, alternativament, variable binària. Així, doncs, cada variable binària té associat un valor 1 o un valor 0.
L’àlgebra de Boole és una eina matemàtica que ens permet treballar amb sistemes que només fan servir dos estats clarament diferenciats, com és el cas dels sistemes digitals.
Què significa 1 i què significa 0?
Això depèn de l’aplicació i l’únic important és que representa dos estats clarament diferenciats.
Vegem-ne un exemple senzill: molts cotxes incorporen un sistema que informa de l’estat de les portes, de manera que encén un llum indicador si detecta que hi ha una porta oberta.
Com que cadascuna de les portes del vehicle únicament poden estar en dos estats diferents (porta oberta o porta tancada), podem “traduir” aquesta situació a l’àlgebra de Boole d’una manera molt clara.
Per exemple, podríem associar una variable binària a cada porta que anomenarem de la següent manera:
- A: variable que representa l’estat de la porta del conductor
- B: variable que representa l’estat de la porta del copilot
- C: variable que representa l’estat de la porta del darrere esquerra
- D: variable que representa l’estat de la porta del darrere dreta
I finalment, associaríem a l’estat “porta oberta” el valor 1 i a l’estat “porta tancada”, el valor 0. Òbviament, aquesta elecció ha estat arbitrària i podríem haver fet l’assignació contrària.
Fixeu-vos que amb aquests simples passos hem pogut traduir una informació del món real al món matemàtic de l’àlgebra de Boole, de tal manera que si ara ens diguessin:
- A = 1
- B = 1
- C = 0
- D = 0
sabríem que les dues portes davanteres del nostre vehicle estan obertes i les dues del darrere, tancades.
Les tres operacions bàsiques de l’àlgebra de Boole són les següents:
Variables binàries al món real
Hi ha molts casos del món real que es poden “traduir” al món binari d’uns i zeros. Per exemple, l’estat de les portes d’un vehicle: cada porta del vehicle equival a una variable binària, de manera que si la porta està oberta la variable pren el valor 1 i si la porta està tancada la variable pren el valor 0.
- Suma lògica. És representada pel signe + i requereix dos operands com a mínim. Per exemple, en un circuit elèctric, si tenim dos interruptors en paral·lel per encendre una bombeta (a o b), polsant-ne qualsevol dels dos la bombeta s’encendria (a + b). Aquesta operació queda definida en la taula.
| a | b | a + b |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
El resultat de la suma lògica és 1 si qualsevol dels operands és 1.
- Producte lògic. És representat pel signe · i requereix dos operands com a mínim. Per exemple, en un circuit elèctric, si tenim dos interruptors en sèrie per encendre una bombeta (a i b), la bombeta només s’encendria quan polsem els dos (a · b). Aquesta operació queda definida en la taula.
| a | b | a·b |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
El resultat del producte lògic és 1 només si tots els operands són 1.
- Negació. És una operació que només requereix un operand. Si l’operand és la variable a, una línia horitzontal sobre aquesta variable indica que està negada o complementada (
). Aquesta operació queda definida en la taula.
| a | |
|---|---|
| 0 | 1 |
| 1 | 0 |
L’àlgebra de Boole és el suport matemàtic per al disseny i l’anàlisi dels sistemes digitals i, com tota àlgebra, disposa d’una sèrie de propietats, postulats i teoremes (taula). Segurament les més importants són el teorema d’absorció, molt útil en simplificacions, i el teorema de DeMorgan, el qual ens indica com es converteix un producte lògic en una suma lògica i a l’inrevés.
| Propietat | Descripció | Formulació |
|---|---|---|
| Idempotència | La repetitivitat d’una operació produeix un únic resultat | ![]() |
| Involució | Dues negacions directes sobre el mateix element s’anul·len | ![]() |
| Commutativitat | L’ordre de la suma o del producte és indiferent | ![]() |
| Associativitat | Les sumes (o els productes) es poden resoldre en qualsevol ordre | ![]() |
| Distributivitat | LA suma és distributiva envers el producte | ![]() |
| Llei d’absorció | Eliminació de termes irrellevants | ![]() |
| Teorema de DeMorgan | Descomposició de productes en sumes o de sumes en productes | ![]() |
El teorema d’absorció es pot expressar amb aquestes dues expressions algebraiques:
En la primera expressió d’absorció veiem que el resultat només depèn de la variable A, que només té dos estats possibles: 0 i 1. En el cas que fos 0 tindríem 0 + 0 · b i qualsevol nombre per 0 és 0. Si fos 1, tindríem 1 + 1 · b; com que és una suma, el resultat sempre seria 1, per tant, a + a · b = a.
En la segona expressió, com que la variable a està multiplicant tot el parèntesi, el valor de sortida sempre serà a. Si a fos 0, tindríem un valor multiplicat per 0, que és igual a 0, i si a fos 1, tindríem 1 multiplicat per (1 + b) que és igual a 1. Per tant, a · (a + b) = a.
El teorema de DeMorgan es pot expressar amb aquestes dues expressions algebraiques:
Funcions lògiques
Anomenem funció lògica una variable binària que pren el valor d’una expressió algebraica formada per altres variables binàries relacionades de la manera que sigui mitjançant les operacions suma lògica, producte lògic i negació.
Diferents maneres d'escriure una funció lògica
En alguns llibres veureu que, al costat del nom de la funció, s’acostuma a escriure entre parèntesis les variables emprades per la funció. Per exemple:
Tanmateix, moltes vegades veureu que el signe · del producte lògic no s’escriu, ja que es dóna per suposada la seva existència. Per exemple, la funció anterior es pot escriure així:
Per exemple, les següents expressions són funcions lògiques definides per una expressió algebraica:
Diem que una funció està expressada com una suma de productes si la seva expressió algebraica està formada per una suma de termes i cada terme està format per unes variables que es multipliquen entre elles.
Per exemple, la funció següent és una suma de productes:
Diem que una funció està expressada com un producte de sumes si la seva expressió algebraica està formada per un producte de termes i cada terme està format per unes variables que se sumen entre elles.
Per exemple, la funció següent és un producte de sumes:
Compte amb els parèntesis!
Pareu atenció que, en el cas dels productes de sumes, és obligatori l’ús de parèntesis en els termes, ja que primer s’han d’avaluar les sumes i després el producte. Si, per error, escrivíssim la funció de l’exemple així:
entendríem que primer s’hauria de fer el producte
i després fer la suma de tots els termes (estaríem al davant d’una funció en forma de suma de productes)
Com s'avaluen les funcions lògiques?
Donada una expressió algebraica booleana formada per molts termes, hauríem de trobar el valor resultant de la funció seguint aquest ordre:
- Parèntesis
- Operació de negació
- Operació producte lògic
- Operació suma lògica
Exemple d'avaluació de funció lògica
Volem saber quin valor té la funció
quan a = 0, b = 1, c = 1 i d = 1.
Solució
S’hauria d’avaluar seguint els següents passos:
Com que no hi ha parèntesis ni negacions, en primer lloc es farien les operacions de producte lògic:
Per acabar, es faria la suma lògica dels resultats anteriors. En aquest cas, substituïm a · b pel seu valor (0) i c · d pel seu valor (1), i obtindrem:
Exemple d'avaluació de funció lògica
Volem saber quin valor té la funció
quan a = 1, b = 1 i c = 1.
En aquest cas, en primer lloc s’ha de fer l’operació que hi ha dins del parèntesi:
Després s’ha de fer l’operació de negació que té la variable a:
I finalment s’ha de fer el producte lògic d’aquests dos resultats:
Taula de veritat d'una funció lògica
Una taula de veritat és una manera de representar una funció lògica, en la qual es mostra el valor que pren la funció per a cadascuna de les combinacions de les variables d’entrada de la funció.
Per construir la taula de veritat d’una funció lògica s’han de seguir els següents passos:
- Dibuixar una taula amb:
- tantes columnes com variables tingui la funció, més una columna addicional
- tantes files com el nombre de possibles combinacions de les variables d’entrada, més una fila addicional
- En la fila superior es posen els noms de les variables (en les columnes de l’esquerra) i de la funció (en la columna de la dreta).
- S’omple la resta de files amb les diferents combinacions de valors de les variables d’entrada, en ordre creixent, com si comptéssim en binari natural.
- S’omple la columna de la dreta amb el valor que pren la funció per a cada combinació de valors d’entrada.
Exemple de taula de veritat d'una funció lògica donada
Per construir la taula de veritat de la funció
faríem el següent:
- Construïm la taula:
- Amb 3 + 1 (és a dir, 4) columnes, ja que la funció és de tres variables (a, b i c).
- Amb 23 + 1 (és a dir, 9) files, ja que amb 3 variables es poden fer 23 = 8 combinacions.
- Posem el nom de les variables (a, b, c) i de la funció (f1) a la fila superior.
- Omplim a sota totes les combinacions de valors que podem tenir amb tres variables. La primera combinació és 000, la següent 001, la següent 010… fins a arribar a l’última combinació 111 (com si comptéssim en binari).
- Avaluem la funció per a cadascuna d’aquestes combinacions i posem el resultat a la columna de la dreta.
El resultat obtingut es mostra a la taula.
Recordeu el que heu après quan hem vist el sistema de numeració binari: si tenim n variables, podem fer 2n combinacions diferents.

| a | b | c | |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 |
Funcions equivalents
Una funció booleana es pot definir indistintament amb una expressió algebraica o amb una taula de veritat. Coneixem el mètode per trobar la taula de veritat d’una funció expressada algebraicament.
El que encara no hem vist és com es fa el pas invers: partir de la taula de veritat d’una funció i trobar una expressió algebraica que descrigui la mateixa funció. Això és el que estudiarem en l’apartat “Formes canòniques d’una funció”.
Abans, però, ens podríem plantejar si hi ha més d’una expressió algebraica que verifiqui una taula de veritat donada. I, efectivament, és això.
Expressions algebraiques aparentment diferents poden descriure la mateixa funció lògica. Quan passa això diem que les funcions són equivalents.
La manera més fàcil de descobrir si dues funcions són equivalents és trobar la taula de veritat a partir de cadascuna de les expressions algebraiques i comprovar si donen el mateix resultat.
Com a exemple, veurem si són equivalents les funcions següents:
Primer omplim la taula de veritat de
: el resultat el podeu veure a la taula.

| a | b | |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
A continuació omplim la taula de veritat de
: el resultat el podeu veure a la taula.

| a | b | |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
Observant les dues taules, veiem que els resultats de les dues funcions són idèntics. Per tant,
i
són equivalents.
Formes canòniques d'una funció
A continuació veurem com podem trobar una expressió algebraica d’una funció a partir de la seva taula de veritat. Hi ha dues maneres de fer-ho i es coneixen com a formes canòniques.
Primera forma canònica
La primera forma canònica es basa a expressar la funció com una suma de productes que deduirem de la taula de veritat mitjançant el procediment que utilitzem en l’exemple següent:
- A la taula de veritat, ens fixarem en les combinacions de valors de les variables d’entrada que fan que la funció valgui 1.
- Per cadascuna d’aquestes combinacions hem de trobar un terme producte, anomenat minterm, amb les següents característiques:
- Està format per totes les variables de la funció, negades o no.
- Aquestes variables estan multiplicades.
- Per saber si la variable ha d’estar negada o no a cada minterm, us heu de fixar en la combinació de valors:
- Si el valor d’aquesta variable és 0, aquesta variable haurà d’anar negada en el terme producte.
- Si el valor d’aquesta variable és 1, aquesta variable haurà d’anar directa (no negada) en el terme producte.
- Finalment, la primera forma canònica s’obté sumant tots els minterms.
| a | b | c | f |
|---|---|---|---|
| 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 0 |
| 1 | 1 | 1 | 0 |
Exemple: obtenció de la primera forma canònica d'una funció
A partir de la taula de veritat mostrada en la taula, trobarem la primera forma canònica de la funció.
Seguint el procediment descrit anteriorment:
- Primer ens fixem en les combinacions de valors que fan que la funció valgui 1:
- a = 0, b = 0 i c = 0
- a = 0, b = 1 i c = 1
- a = 1, b = 0 i c = 1
- Per a cadascuna d’aquestes tres combinacions trobarem un terme producte, anomenat minterm. Total, 3 termes.
- Cadascuna de les tres combinacions genera el minterm associat:
- En la primera combinació de valors, totes les variables estan a zero (a = 0, b = 0 i c = 0) i, per tant, aquestes variables estaran invertides en el minterm associat:
. - En la segona combinació de valors, només la variable a està a zero (a = 0, b = 1 i c = 1). Per tant, el minterm associat serà:
. - En la tercera combinació de valors, només la variable b està a zero (a = 1, b = 0 i c = 1). Per tant, el minterm associat serà:
.
- Finalment, només cal fer la suma lògica dels tres minterms per obtenir la primera forma canònica de la funció:
Segona forma canònica
La segona forma canònica es basa a expressar la funció com un producte de sumes que deduirem de la taula de veritat mitjançant el següent procediment:
- A la taula de veritat, ens fixarem en les combinacions de valors de les variables d’entrada que fan que la funció valgui 0.
- Per cadascuna d’aquestes combinacions hem de trobar un terme producte, anomenat maxterm, amb les següents característiques:
- Està format per totes les variables de la funció, negades o no.
- Aquestes variables estan sumades.
- Per saber si la variable ha d’estar negada o no a cada maxterm, us heu de fixar en la combinació de valors:
- Si el valor d’aquesta variable és 0, aquesta variable haurà d’anar directa (no negada) en el terme suma.
- Si el valor d’aquesta variable és 1, aquesta variable haurà d’anar negada en el terme suma.
- Finalment, la segona forma canònica s’obté multiplicant tots els maxterms.
Exemple: obtenció de la segona forma canònica d'una funció
A partir de la taula de veritat mostrada en la taula, trobarem la segona forma canònica de la funció.
Seguint el procediment descrit anteriorment:
- Primer ens fixem en les combinacions de valors que fan que la funció valgui 0:
- a = 0, b = 0 i c = 1
- a = 0, b = 1 i c = 0
- a = 1, b = 0 i c = 0
- a = 1, b = 1 i c = 0
- a = 1, b = 1 i c = 1
- Per a cadascuna d’aquestes cinc combinacions trobarem un maxterm o terme producte.
- Els maxterms que corresponen a cada combinació són els següents:
- A la combinació a = 0, b = 0 i c = 1 li correspon

- A la combinació a = 0, b = 1 i c = 0 li correspon

- A la combinació a = 1, b = 0 i c = 0 li correspon

- A la combinació a = 1, b = 1 i c = 0 li correspon

- A la combinació a = 1, b = 1 i c = 1 li correspon

- Finalment, només cal fer el producte lògic dels cinc maxterms per obtenir la segona forma canònica de la funció:
Recordeu que cal usar els parèntesis si es vol expressar correctament la funció com un producte de sumes.
Portes lògiques bàsiques
Fins i tot els sistemes digitals més complexos estan formats per blocs més petits encarregats de fer operacions senzilles amb senyals binaris. Aquests blocs fonamentals són el que coneixem com a portes lògiques.
Les portes lògiques...
… són per als sistemes digitals com els maons per a l’arquitectura: malgrat la seva senzillesa, ens permeten construir estructures molt complexes.
Cada porta lògica fa una funció determinada; de totes les possibles funcions existents, les portes lògiques bàsiques són aquelles que es constitueixen com a bons elements de disseny de propòsit general. Les portes lògiques bàsiques són la porta AND, la porta OR , la porta NOT, la porta NAND i la porta NOR.
Símbols de les portes
Les portes lògiques més importants disposen de símbols gràfics especials que les representen. Hi ha dues maneres de representar cada porta. Les normes que regulen aquestes dues simbologies són les següents:
- La norma IEEE 91-1973, que va ser la primera i més popular.
- La norma IEEE 91-1984, que és més recent i proporciona informació més precisa, encara que no s’utilitza tan sovint.
Porta AND
La porta AND fa la funció de producte lògic i rep el nom de la paraula anglesa and, que significa i en català.
Consulteu la simulació de porta AND que teniu disponible als annexos del web.
La sortida d’una porta AND és 1 només si totes les variables d’entrada són 1.
La figura mostra el símbols d’una porta AND de dues entrades, però els mateixos símbols serveixen per a un nombre d’entrades més gran, només cal afegir les connexions d’entrada necessàries al símbol.

La funció que realitza la porta AND és anàloga a la funció que realitzen dos interruptors en sèrie.
IEEE és la sigla en anglès de l’Institut d’Enginyers en Electricitat i Electrònica. En català s’acostuma a pronunciar com aI E cub.
Com podeu veure en la figura, la làmpada X1 tan sols s’encén (és a dir, la sortida es posa a estat 1 lògic) quan els interruptors A i B estan tancats (és a dir, quan les dues entrades estan a 1 lògic).
Porta OR
La porta OR realitza la funció suma lògica i rep el nom de la paraula anglesa or, que significa o en català.
Consulteu la simulació de porta OR que teniu disponible als annexos del web.
La sortida d’una porta OR és 1 si, com a mínim, una variable d’entrada és 1.
La figura mostra el símbols d’una porta OR de dues entrades, la seva expressió algebraica i la seva taula de veritat.

La funció que realitza la porta OR és anàloga a la funció que realitzen dos interruptors en paral·lel.
Com podeu veure en la figura, la làmpada X2 s’encén (és a dir, la sortida es posa a estat 1 lògic) quan, com a mínim, un dels dos interruptors A i B està tancat.
Porta NOT
Aquesta porta, també coneguda com a inversor, només té una entrada i realitza la funció de negació, de manera que la sortida és 1 si l’entrada és 0 i la sortida és 0 si l’entrada és 1.
Consulteu la simulació de porta NOT que teniu disponible als annexos del web.
La figura mostra els símbols d’una porta NOT, la seva expressió algebraica i la seva taula de veritat.
Porta NAND
El nom d’aquesta porta prové de la unió de les paraules angleses notiand i, com el seu nom indica, és una porta AND amb la sortida invertida.
Consulteu la simulació de porta NAND que teniu disponible als annexos del web.
La sortida d’una porta NAND és 0 només si totes les variables d’entrada són 1.
La figura mostra els símbols d’una porta NAND, la seva expressió algebraica i la seva taula de veritat.
Porta NOR
La sortida d’una porta NOR és la invertida d’una porta OR. El seu nom prové de la unió de les paraules angleses noti or.
Consulteu la simulació de porta NOR que teniu disponible als annexos del web.
La sortida d’una porta NOR és 1 només si totes les variables d’entrada són 0.
La figura mostra els símbols d’una porta NOR, la seva expressió algebraica i la seva taula de veritat.
Porta XOR
També anomenada porta OR-exclusiva. La seva sortida és 1 només quan les dues variables d’entrada tenen valors diferents.
Consulteu les simulacions de portes XOR i NXOR (NOT XOR) que teniu disponibles als annexos del web.
Als annexos del web teniu disponible un breu tutorial per iniciar-vos en l’ús del NI Curcuit Design Suite en l’àmbit de l’electrònica digital.
Als annexos del web teniu disponible un exemple complet de disseny d’un circuit amb portes lògiques, que inclou els arxius de simulació.
L’operador XOR en les expressions algebraiques és el símbol
, un signe de suma encerclat.
En el cas de tenir més de dues entrades, podeu recordar com funciona una porta XOR si recordeu el següent:
La sortida d’una porta XOR és 1 només si hi ha un nombre senar d’entrades a 1.
La figura 14 mostra els símbols d’una porta XOR, la seva expressió algebraica i la seva taula de veritat.
Simplificació de funcions lògiques amb mapes de Karnaugh
Per a qualsevol aplicació que ens plantegem, és evident que l’obtenció de la funció més curta possible té grans avantatges:
- Circuits més petits i ràpids
- Preu més reduït
Una de les eines més senzilles per obtenir una funció simplificada a partir d’una taula de veritat és l’anomenada mapa de Karnaugh, que consisteix en un mètode gràfic.
Partint de la taula de veritat d’una funció digital d’entre dues i quatre variables, el mètode consisteix en reescriure aquella taula de veritat seguint unes indicacions concretes. Això ens donarà el punt de partida per realitzar la simplificació.
Un mapa de Karnaugh és una representació gràfica d’una taula de veritat.
Construcció d'un mapa de Karnaugh
De la mateixa manera que una taula de veritat té un nombre 2n de resultats possibles per a n variables, el mapa de Karnaugh resultant tindrá el mateix nombre de caselles.
A l’interior de les caselles haurem de posar el valor de la sortida corresponent a cadascuna de les combinacions dels valors de les entrades. Aquests valors poden ser:
Una taula de veritat de dues entrades té 22 = 4 resultats possibles.
Una taula de veritat de tres entrades té 23 = 8 resultats possibles.
Una taula de veritat de quatre entrades té 24 = 16 resultats possibles.
- 0: zero lògic.
- 1: u lògic.
- X: indiferent, podrem prendre’l com a 0 o com a 1 segons ens interessi.
Al mapa de Karnaugh només hi hem de posar un dels resultats: o bé posem els uns (1) o bé els zeros (0). Al nostre nivell, nosaltres només treballarem amb els uns (1). Així, ignorarem els zeros.
Termes indiferents en una funció digital
En un sistema digital real, els valors indiferents de la sortida apareixen, en general, quan és impossible que la combinació d’entrades corresponent es produeixi. De cara al càlcul, podem considerar que ens és igual si val 0 o val 1.
Els resultats indiferents (X) de la funció s’han de posar sempre al mapa de Karnaugh
Mapa de Karnaugh amb zeros o amb uns?
La idea general seria treballar amb el resultat més abundant de la taula. En aquest text no ens n’ocuparem, però si treballéssim amb els zeros obtindríem una funció simplificada de termes de tipus maxterms (producte de termes suma) i treballant amb els uns obtindríem una funció simplificada de termes de tipus minterms (suma de termes producte).
Aquesta manera de representar la taula de veritat ens servirà per detectar aquells termes de la funció canònica que estan generats per combinacions de les entrades entre les quals només canvia un dígit. Dit així, sembla complicat, però com és un mètode gràfic, no ho és pas.
Construcció d'un mapa de Karnaugh per a una funció de 2 variables
Imaginem una taula de veritat d’una funció de 2 variables a, b, i una sortida x:
| a | b | x |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | X |
En aquest cas, el mapa serà una taula amb els valors possibles d’a i de b a cadascun dels eixos:
Noteu que hi hem copiat els valors corresponents de la sortida (només els 1) per a cadascuna de les combinacions.
Construcció d'un mapa de Karnaugh per a una funció de 3 variables
Imaginem una taula de veritat d’una funció de 3 variables a, b, c, i una sortida x:
| a | b | c | x |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 1 |
| 0 | 1 | 0 | 1 |
| 0 | 1 | 1 | X |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 |
En aquest cas, el mapa serà una taula amb els valors possibles d’a, de b i de c a cadascun dels eixos. En un dels eixos hi hauran d’aparèixer dues d’elles, i el més important és que passarem d’una casella a l’adjacent’ només canviant el valor d’una sola variable.
Vegeu com, en la figura següent, hem posat a l’eix horitzontal la combinació ab, amb els valors possibles exactament en el següent ordre:
- 00
- 01
- 11
- 10
No segueixen l’ordre natural que seria 0, 1, 2, 3 (00-01-10-11), sinó que estan ordenats de forma que d’un terme al següent només canvia un dígit, i a més, també canvia un sol dígit entre el darrer i el primer.
Noteu que hi hem copiat els valors corresponents de la sortida (només els 1) per a cadascuna de les combinacions.
Construcció d'un mapa de Karnaugh per a una funció de 4 variables
Imaginem una taula de veritat d’una funció de 4 variables a, b, c, d, i una sortida x:
| a | b | c | d | x |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | X |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 1 |
| 1 | 0 | 0 | 1 | X |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 1 | 1 | 0 | 0 | 1 |
| 1 | 1 | 0 | 1 | 0 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 0 |
En aquest cas, el mapa serà una taula amb els valors possibles d’a, de b, de c i de d a cadascun dels eixos. Als dos eixos hi hauran d’aparèixer dues d’elles, i el més important és que passarem d’una casella a l’adjacent’ només canviant el valor d’una sola variable.
Vegeu com, en la figura següent, hem posat a l’eix horitzontal la combinació ab i a l’eix vertical cd, igualment amb els valors possibles exactament en el següent ordre:
- 00
- 01
- 11
- 10
No segueixen l’ordre natural que seria 0, 1, 2, 3 (00-01-10-11), sinó que estan ordenats de forma que d’un terme al següent només canvia un dígit, i a més, també canvia un sol dígit entre el darrer i el primer.
Noteu que hi hem posat els valors corresponents de la sortida (només els 1) per a cadascuna de les combinacions.
Simplificació del mapa de Karnaugh (mètode) a partir dels 1 de la funció
Per fer la simplificació de la funció digital, el primer que hem de fer és triar amb quin resultat (0 o 1) treballarem. en el nostre cas, per fer-ho més fàcil, sempre treballarem amb els uns (1) de la funció.
Prenent com a punt de partida el mapa emplenat amb els uns (1) i els indiferents (X), la simplificació consisteix en fer agrupacions tot seguint les set regles que descrivim tot seguit.
Consideració important: a l’hora d’agrupar els 1, considerarem que les X són 1 o 0 lliurement, segons ens interessi en cada moment.
Regla 1
Un element es pot agrupar amb d’altres elements amb els quals estigui en contacte directe als costats, a dalt o a sota, en horitzontal o en vertical. Mai en diagonal.
Així, vegeu a la figura possibles agrupacions correctes i incorrectes.
Regla 2
Al mapa de Karnaugh els extrems es toquen, tant per les bandes laterals com per dalt i per baix.
Així, les agrupacions mostrades en la figura seran totes correctes.
Regla 3
Els grups poden tenir un nombre d’elements que sigui potència de 2. Així, els grups podran tenir 1, 2, 4 o 8 elements (mai 3 o 6, que són els errors típics).
D’aquesta manera, vegeu a la figura possibles agrupacions correctes i incorrectes.
Regla 4
Els grups han de tenir una forma compacta: poden ser quadrats o rectangulars. Mai podran tenir forma de L o similar.
D’aquesta manera, vegeu a la figura possibles agrupacions correctes i incorrectes.
Regla 5
Els grups es poden superposar entre ells. Això vol dir que un 1 pot pertànyer perfectament a més d’un grup.
Les agrupacions de la figura són completament correctes.
Regla 6
Els grups han de ser tan extensos com sigui possible. No importa si per a això s’han de superposar. Millor dos grups de 4 que se superposin que no pas un de 4 amb un de 2 al costat.
Utilitzarem les X del mapa de Karnaugh per aconseguir crear grups els més grans possible, considerant-les 1 o 0 si ens interessa.
Així, davant de les dues propostes de solució mostrades en la figura, hi ha una que és òptima i l’altra, essent correcta (el circuit funcionaria), no és la millor solució possible.
Regla 7
Tots els uns del mapa han de pertànyer a algun grup. No pot quedar cap 1 sense agrupar. Les X sí que poden intervenir en la formació dels grups o no, segons les nostres necessitats.
Obtenció de la funció òptima de sortida (mètode)
La solució òptima serà aquella que presenti el mínim nombre de grups possible que esdevinguin tan extensos com sigui possible.
Si es miren les files i columnes a què afecta un grup del mapa es pot veure si les variables (a, b, c, d en el nostre cas) tenen un valor fix o si canvien de valor.
Cada grup del mapa generarà un terme de la funció simplificada, en forma de producte de les variables que hi apareguin. La funció final serà la suma d’aquests termes.
La forma de construir un terme a partir d’un grup és la següent:
- Mireu en tota l’extensió del grup, variable per variable, quines variables tenen valor fix i quines canvien de valor.
- El contingut del terme es farà en funció de:
- Variables que canvien de valor: no apareixen al terme
- Variables que valen 0 fix: apareixen negades (ex:
) al terme - Variables que valen 1 fix: apareixen directes (ex:
) al terme
Cada terme consistirà en el producte de les variables que han d’aparèixer, directes o negades segons el cas.
Exemple pràctic complet de mapa de Karnaugh
Sigui la taula de veritat (quatre variables a, b, c, d; una sortida f) mostrada a la taula.
| a | b | c | d | f |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 1 | 0 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 0 | 1 | 1 | 1 |
| 0 | 1 | 0 | 0 | X |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 1 | 0 | 1 |
| 1 | 0 | 1 | 1 | 0 |
| 1 | 1 | 0 | 0 | 0 |
| 1 | 1 | 0 | 1 | X |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Construïm primer el mapa de Karnaugh resultant de la taula de veritat, que serà el mostrat a la figura.
A continuació fem les agrupacions tot seguint les set regles anteriors. El resultat serà el que es mostra a la figura.
Noteu que per tal de crear grups més grans hem aprofitat una de les X i l’altra no ha calgut.
Els termes seran:
- Grup de 2 vertical: a = 0, b = 0, c = 1, d = 1/0

- Grup de 4: a = 0/1, b = 1, c = 0/1, d = 1

- Grup de 2 horitzontal dalt: a = 1, b = 1/0, c = 0, d = 1

- Grup de 2 horitzontal baix: a = 1, b = 1/0, c = 1, d = 0

La funció òptima de sortida serà:
Com expressar la funció resultant amb només un tipus d'operació lògica
L’única manera posterior de millorar aquesta funció seria expressar-la fent servir un únic tipus de porta (NAND, per exemple). Això ho podríem fer aplicant el teorema de DeMorgan a aquest funció que hem obtingut, convertint les sumes en productes negats.
Ara no ens aturarem a descriure de nou aquest procediment, descrit amb anterioritat, però almenys sapigueu que és un pas posterior que sempre podríeu aplicar.













































