[TUTO] Les Portes Logiques

Informations pour bien débuter en PureBasic
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

[TUTO] Les Portes Logiques

Message par Flype »

Suite à une demande de kwai chang caine : http://www.purebasic.fr/french/viewtopic.php?t=6425

Je mets ici toutes les possibilités d'opérations sur les portes logiques.

Pour de plus amples informations, je conseillerais tout simplement de suivre les explications données sur Wikipédia.

http://fr.wikipedia.org/wiki/Porte_logique


Dans le code suivant, on créé des macros pour représenter toutes les opérations logiques.

En effet, PureBasic intègre nombre d'entres elles mais pas toutes.


Supporté nativement par PureBasic 4.x :

Code : Tout sélectionner

NOT
OR
XOR
AND

Non-supportée nativement par PureBasic 4.x :
Ces dernières ne sont ni plus ni moins qu'une version avec un NOT.

Code : Tout sélectionner

NOR
XNOR
NAND


Source :

Code : Tout sélectionner

;- 
;- MACROS PORTES LOGIQUES
;- http://fr.wikipedia.org/wiki/Porte_logique
;- 

Macro logic_not(A)
  (Not (A))
EndMacro
Macro logic_or(A, B)
  ((A) Or (B))
EndMacro
Macro logic_xor(A, B)
  ((A) Xor (B))
EndMacro
Macro logic_nor(A, B)
  (logic_not(logic_or(A, B)))
EndMacro
Macro logic_xnor(A, B)
  (logic_not(logic_xor(A, B)))
EndMacro
Macro logic_and(A, B)
  ((A) And (B))
EndMacro
Macro logic_nand(A, B)
  (logic_not(logic_and(A, B)))
EndMacro

Debug "OU"
Debug logic_or(0, 0)  ;  0  |  0  |  0
Debug logic_or(0, 1)  ;  0  |  1  |  1
Debug logic_or(1, 0)  ;  1  |  0  |  1
Debug logic_or(1, 1)  ;  1  |  1  |  1

Debug "OU EXCLUSIF"
Debug logic_xor(0, 0)  ;  0  |  0  |  0
Debug logic_xor(0, 1)  ;  0  |  1  |  1
Debug logic_xor(1, 0)  ;  1  |  0  |  1
Debug logic_xor(1, 1)  ;  1  |  1  |  0

Debug "NON-OU"
Debug logic_nor(0, 0)  ;  0  |  0  |  1
Debug logic_nor(0, 1)  ;  0  |  1  |  0
Debug logic_nor(1, 0)  ;  1  |  0  |  0
Debug logic_nor(1, 1)  ;  1  |  1  |  0

Debug "NON-OU EXCLUSIF"
Debug logic_xnor(0, 0)  ;  0  |  0  |  1
Debug logic_xnor(0, 1)  ;  0  |  1  |  0
Debug logic_xnor(1, 0)  ;  1  |  0  |  0
Debug logic_xnor(1, 1)  ;  1  |  1  |  1

Debug "ET"
Debug logic_and(0, 0)  ;  0  |  0  |  0
Debug logic_and(0, 1)  ;  0  |  1  |  0
Debug logic_and(1, 0)  ;  1  |  0  |  0
Debug logic_and(1, 1)  ;  1  |  1  |  1

Debug "NON-ET"
Debug logic_nand(0, 0)  ;  0  |  0  |  1
Debug logic_nand(0, 1)  ;  0  |  1  |  1
Debug logic_nand(1, 0)  ;  1  |  0  |  1
Debug logic_nand(1, 1)  ;  1  |  1  |  0
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Message par cha0s »

un petit tuto sur le cryptage en ou exclusif .
http://www.games-creator.com/forum3/vie ... hlight=xor
c'est pour dbpro mais facilement adaptable.
Répondre