HPlogo System Debug Reference Manual > Appendix B Expression Diagrams

Appendix B Expression Diagrams

MPE documents

Complete PDF
Table of Contents
Index

E0201 Edition 4 ♥
E0300 Edition 3
E0692 Edition 3

The following diagrams depict valid expressions for DAT/Debug:
expression :=

  ---+-->      simpexpr        ---+-->
     |                            |
     +<--    simpexpr relop     --+

simpexpr :=

  [+-] --+-->      term         --+-->
         |                        |
         +<----     + -      -----+   add, subtract
         |                        |
         +<----     OR       -----+   logical OR

term :=

  --+-->      factor       --+-->
    |                        |
    +<----      * /     -----+   multiply, divide
    |                        |
    +<-------  MOD    -------+   modulus
    |                        |
    +<-------  AND    -------+   logical AND

factor :=

  --+-->    addrvalue   -----+-->
    |                        |
    +<----     <<       -----+   left shift bits
    +<----     >>       -----+   right shift bits
    |                        |
    +<-------- BAND ---------+   bit AND
    +<-------- BOR  ---------+   bit OR

addrvalue :=

  --+-->       value         --->
    |
    +-->    value.value      --->  a.cooo2c40
                                  pc, cmpc, pw

value :=

  --+-->   numeric-literal   ---+-->    224
    |                           |
    +-->    string-literal   -->+       "AB", 'ab', `ab`
    |                           |
    +-->      variable       -->+       sdst
    |                           |
    +-->  [ indirect_addr  ] -->+       contents of
    |                           |
    +-->    ( simpexpr  )    -->+       ( 25/3 + 1 )
    |                           |
    +-->   NOT expression    -->+       NOT (n < 6 )
    +-->  BNOT expression    -->+       BNOT $FF0F
 
numeric-literal :=

  123 | %123 | #123 | $123  default, oct, dec, hex

string-literal :=

  "ABCD"  |  'ABCD'  |  `abcd`

relop :=

  <  <=  =  >  >=  <>

indirect-addr :=

  CST    seg.offset
  CSTX   seg.offset
  DST    seg.offset
  ABS    [offset]
  DB     [offset]
  S      [offset]
  Q      [offset]
  P      [offset]
  REAL   offset

  [VIRT] offset
  [VIRT] sid.offset
  [VIRT] nmlogaddr

  CMLOG  cmlogaddr

  SEC    ldev.offset




Technical Summary


Appendix C Emulated/Translated CM Code