Difference between revisions of "Category:83Plus:OS:Operator Stack"

From WikiTI
Jump to: navigation, search
m (Wikified but I don't want to move it because I'm still new :P Also I don't know if putting two memory locations is allowed.)
m
Line 4: Line 4:
 
== Synopsis ==
 
== Synopsis ==
  
'''Official Name:''' OPBase and OPS
+
'''Official Name:''' OPS
  
'''Memory Address:''' 9826h - 9828h
+
'''Memory Address:''' 9828h
  
 
'''Length:''' 2 bytes
 
'''Length:''' 2 bytes

Revision as of 11:19, 3 December 2020


Please format this article according to the guidelines and Wikification suggestions, then remove this {{Wikify}} notice from the article.


This article is a stub. You can help WikiTI by expanding it.


Synopsis

Official Name: OPS

Memory Address: 9828h

Length: 2 bytes

The operator stack is defined between (OPS) and (OPBase). The OS uses this area for storing information for conditional statements and loops in TI-BASIC.

Comments

Due to extremely poor programming in the OS, it is the cause of the well-known memory leaks which can occur if a programmer uses a Goto statement within a loop or an If:Then statement. In a nutshell, it moves the OPS and FPS by nine bytes every time a push to each occurs, which happens when a conditional is entered. This can cause a slowdown (slowly becomes more to move) and memory leaks (the nine bytes added above). The FPS are not accounted for, or are 'leaked'.

Very little is currently known about the OPS since TI has not documented it, but research is underway.

This category currently contains no pages or media.