
Inadvertently typed code that may result in an infinite loop can cause code to malfunction. In addition, whenever a runtime error occurs, the user is informed of the problematic instruction and what operation in the instruction resulted in the error. Whenever the link register is set to enter a subroutine, the linked subroutine return point will be highlighted and will remain highlighted until the subroutine exits.Īs opposed to providing cryptic compiler error messages, VisUAL provides context-specific error messages with explanations of exactly what is expected. An arrow points to the branch destination, acting as a visual cue to indicate a branch to another line of code is about to take place. For conditional instructions, status bits involved in condition checking are highlighted. Stack behaviour is described, and the stack as well as stack pointer at the start and end of the stack are displayed.Ĭolour coded line highlights are used to indicate when a branch is being taken. Instructions to load/store multiple instructions in the form of a stack can be visualised. Base and offset addresses are shown, and any values that have been changed are highlighted. Your browser does not support HTML5 video.Īll memory access operations, word-aligned or byte-aligned, can be visualised. The animations use actual data values from the shift instruction being demonstrated. VisUAL can demonstrate shift operations by playing them as animations.

VisUAL provides an information pane that displays useful pointer information when needed. Pointers in ARM assembly can be quite difficult to understand, especially since ARM assembly has 9 different variations of pointer behaviour when it comes to load/store instructions.

This feature can help debugging and understanding complex code easier. In addition to stepping through code, users can navigate program history by browsing past register values.
