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