AZBC-REPO menu | @ | list
imagetextmenustatus


NandGate

self

<> NandGate :: NAND gate :: A NAND gate is a boolean logic gate used in electronics. -




NandGate


A NAND gate is a logic gate. The output is false if all inputs are true.
.-----------------------.
|       NAND GATE       |
|-----------------------|
|   INPUT   |   OUTPUT  |
|-----------+-----------|
|  A  |  B  |  A NAND B |
|-----+-----+-----------|
|     |     |           |
|  0  |  0  |     1     |
|  0  |  1  |     1     |
|  1  |  0  |     1     |
|  1  |  1  |     0     |
'-----------------------' 

A NAND gate has functional completeness. This means that all logical gates can be implemented with a  -> NandGate . 
The NorGate also has functinal completeness.


In awk the functions for the logic gates NOT, AND, OR, NOR, XOR, XNOR could be defined with the NAND gate function as follows:
 function _nand_(a, b,        value) {
    if ( !a && !b )
         value = 1;
     else if ( !a && b )
         value = 1;
     else if ( a && !b )
         value = 1;
     else if ( a && b )
         value = 0;
     return value;
 }
 
 function _not_(a,        value) {
     value = _nand_(
                     a, 
                     a
                    );
     return value;
 }
 
 function _and_(a, b,        value) {
     value = _nand_( 
                     _nand_(
                             a, 
                             b
                            ), 
                     _nand_(
                             a, 
                             b
                            )
                    );
     return value;
 }
 
 function  _or_(a, b,        value) {
     value = _nand_( 
                     _nand_(
                             a,
                             a
                            ), 
                     _nand_(
                             b, 
                             b
                            )
                    );
     return value
 }
 
 function _nor_(a, b,        value) {
     value = _nand_( 
                     _nand_(
                             _nand_(
                                     a, 
                                     a
                                    ), 
                             _nand_( b, 
                                     b
                                    )
                            ),
                     _nand_(
                             _nand_(
                                     a, 
                                     a
                                    ), 
                             _nand_(
                                     b, 
                                     b
                                    )
                            )
                    );
     return value;
 }
 
 function _xor_(a, b,        value) {
     value = _nand_(
                     _nand_(
                             a, 
                             _nand_(
                                     a, 
                                     b
                                    ) 
                            ),
                    _nand_(
                            a, 
                            _nand_(
                                    a, 
                                    b
                                   ) 
                           ) 
                    );
     return value;
 }
 
 function _xnor_(a, b,        value) {
     value = _nand_(
                     _nand_(
                             _nand_(
                                     a, 
                                     b
                                    ), 
                             _nand_(
                                     b, 
                                     b
                                    )
                             ), 
                    _nand_(
                            a, 
                            b
                           ) 
                    );
     return value
 }






NandGate
05.01.2021


status | Page | data.science | NandGate