diff options
Diffstat (limited to 'docs/source/debugger/expressions.rst')
-rw-r--r-- | docs/source/debugger/expressions.rst | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/docs/source/debugger/expressions.rst b/docs/source/debugger/expressions.rst index 4b7aeacb51a..5862c3d7ff2 100644 --- a/docs/source/debugger/expressions.rst +++ b/docs/source/debugger/expressions.rst @@ -29,8 +29,16 @@ Expressions can be used anywhere a numeric parameter is expected. The syntax for Differences from C Behaviors ---------------------------- -First, all math is performed on full 64-bit unsigned values, so things like a < 0 won't work as expected. -Second, the logical operators && and || do not have short-circuit properties -- both halves are always evaluated. -Finally, the new memory operators work like this: -| b@<addr> refers to the byte read from <addr>. -| Similarly, w@ refers to a word in memory, d@ refers to a dword in memory, and q@ refers to a qword in memory. The memory operators can be used as both lvalues and rvalues, so you can write b@100 = ff to store a byte in memory. By default these operators read from the program memory space, but you can override that by prefixing them with a 'd' or an 'i'. So dw@300 refers to data memory word at address 300 and id@400 refers to an I/O memory dword at address 400. + +- First, all math is performed on full 64-bit unsigned values, so things like a < 0 won't work as expected. + +- Second, the logical operators && and || do not have short-circuit properties -- both halves are always evaluated. + +- Finally, the new memory operators work like this: + + - b@<addr> refers to the byte read from <addr>. + + - Similarly, w@ refers to a word in memory, d@ refers to a dword in memory, and q@ refers to a qword in memory. + + The memory operators can be used as both lvalues and rvalues, so you can write b\@100 = ff to store a byte in memory. By default these operators read from the program memory space, but you can override that by prefixing them with a 'd' or an 'i'. So dw\@300 refers to data memory word at address 300 and id\@400 refers to an I/O memory dword at address 400. + |