HP48 Simulator for Windows CE Roman Barsky Alon Nozic Supervisor: Alexander Arlievsky
Introduction HP 48 is a powerful scientific calculator, which is widely used by engineers, students and scientists The project goal is to build a working model of the calculator, the Simulator, for the Embedded devices
Supported Features (1) Basic arithmetic operations. Trigonometric functions. The full set of hyperbolic functions. Logarithmic and power functions. Various data types: –Double –Integer (limited usage) –Complex (limited set of operations) –String –Algebraic expression –Program
Supported Features (2) Advanced stack architecture. Working with algebraic expressions. Possibility to define and store objects of all the types. Programming features: –Block structure –If structures –Loop structures
Example The Simulator at work
Working on the Project Paradigms and Techniques
Project Planning The whole project was divided into two parts: “analytic” and “GUI” Each part, in turn, consists of sub- projects
Calc Sub-project The tokenizer (built using FLEX lexical analyzer) Recursive descent parser 2 look-up tables Main stack implementation Mathematical functions implementation
CE_STD Sub-project Partially replaces the Standard Template Library, which lacks in Visual Studio for Windows CE Deque String Streams Map more…
Characters Sub-project The symbols are converted from one- byte representation to wide char and vice-versa. Commonly used in the Simulator.
Calculator Sub-project Editor Screen abstraction Keyboard layer Thread management Initialization and shutting down GUI
The End Any questions?