Template:LogicalTruthPlugin: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 7: Line 7:
   │  '''A'''  │  '''B'''  │ [[NOT]] '''B''' │ '''A''' [[AND]] '''B''' │ '''A''' [[OR]] '''B''' │ '''A''' [[XOR]] '''B''' │ '''A''' [[EQV]] '''B''' │ '''A''' [[IMP]] '''B''' │
   │  '''A'''  │  '''B'''  │ [[NOT]] '''B''' │ '''A''' [[AND]] '''B''' │ '''A''' [[OR]] '''B''' │ '''A''' [[XOR]] '''B''' │ '''A''' [[EQV]] '''B''' │ '''A''' [[IMP]] '''B''' │
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   │ true  │ true  │ false │  true  │ true  │  false  │  true  │  true  │
   │ '''true''' '''true''' │ false │  true  │ true  │  false  │  true  │  true  │
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   │ true  │ false │ true  │  false  │ true  │  true  │  false  │  false  │
   │ '''true''' '''false''' │ true  │  false  │ true  │  true  │  false  │  false  │
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   │ false │ true  │ false │  false  │ true  │  true  │  false  │  true  │
   │ '''false''' '''true''' │ false │  false  │ true  │  true  │  false  │  true  │
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
   │ false │ false │ true  │  false  │ false  │  false  │  true  │  true  │
   │ '''false''' '''false''' │ true  │  false  │ false  │  false  │  true  │  true  │
   └───────┴───────┴───────┴─────────┴────────┴─────────┴─────────┴─────────┘
   └───────┴───────┴───────┴─────────┴────────┴─────────┴─────────┴─────────┘
     [[Relational Operations]] return '''negative one''' (-1, all bits set) and '''zero'''
     [[Relational Operations]] return '''negative one''' (-1, all bits set) and '''zero'''

Revision as of 12:45, 3 August 2022

  The results of the bitwise logical operations, where A and B are operands,
         and true or false indicate whether a bit is set or not set:
  ┌───────────────┬────────────────────────────────────────────────────────┐
  │   OperandsLogical operations                   │
  ├───────┬───────┼───────┬─────────┬────────┬─────────┬─────────┬─────────┤
  │   ABNOT BA AND BA OR BA XOR BA EQV BA IMP B │
  ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
  │ truetrue  │ false │  true   │ true   │  false  │  true   │  true   │
  ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
  │ truefalse │ true  │  false  │ true   │  true   │  false  │  false  │
  ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
  │ falsetrue  │ false │  false  │ true   │  true   │  false  │  true   │
  ├───────┼───────┼───────┼─────────┼────────┼─────────┼─────────┼─────────┤
  │ falsefalse │ true  │  false  │ false  │  false  │  true   │  true   │
  └───────┴───────┴───────┴─────────┴────────┴─────────┴─────────┴─────────┘
    Relational Operations return negative one (-1, all bits set) and zero
  (0, no bits set) for true and false, respectively. This allows relational
   tests to be inverted and combined using the bitwise logical operations.