Instruction Sequences with Indirect Jumps

We study sequential programs that are instruction sequences with direct and indirect jump instructions. The intuition is that indirect jump instructions are jump instructions where the position of the instruction to jump to is the content of some memory cell. We consider several kinds of indirect jump instructions. For each kind, we define the meaning of programs with indirect jump instructions of that kind by means of a translation into programs without indirect jump instructions. For each kind, the intended behaviour of a program with indirect jump instructions of that kind under execution is the behaviour of the translated program under execution on interaction with some memory device.

[1]  Bob Diertens,et al.  Software (Re-)Engineering with PSF II: from architecture to implementation , 2007, ArXiv.

[2]  Jan A. Bergstra,et al.  Decision problems for pushdown threads , 2007, Acta Informatica.

[3]  Jan A. Bergstra,et al.  Polarized Process Algebra and Program Equivalence , 2003, ICALP.

[4]  James Gosling The Java Language Specification - Second Edition , 2000 .

[5]  Alban Ponse Program algebra with unit instruction operators , 2002, J. Log. Algebraic Methods Program..

[6]  Donald Sannella,et al.  Algebraic Preliminaries , 1999, Algebraic Foundations of Systems Specification.

[7]  Ward Douglas Maurer A theory of computer instructions , 2006, Sci. Comput. Program..

[8]  Jan A. Bergstra,et al.  An upper bound for the equational specification of finite state services , 2005, Inf. Process. Lett..

[9]  Martin Wirsing,et al.  Algebraic Specification , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[10]  Jan A. Bergstra,et al.  Interface groups and financial transfer architectures , 2007, ArXiv.

[11]  Wan Fokkink,et al.  Introduction to Process Algebra , 1999, Texts in Theoretical Computer Science. An EATCS Series.

[12]  Egidio Astesiano,et al.  Algebraic Foundations of Systems Specification , 1999, IFIP State-of-the-Art Reports.

[13]  Jan A. Bergstra,et al.  Parallel Processes with Implicit Computational Capital , 2008, LIX.

[14]  Jan A. Bergstra,et al.  A process algebra based framework for promise theory , 2007, ArXiv.

[15]  Bob Diertens Software (Re-)Engineering with PSF III: an IDE for PSF , 2007, ArXiv.

[16]  Jan A. Bergstra,et al.  Local and Global Trust Based on the Concept of Promises , 2009, ArXiv.

[17]  T. D. Vu Metric Denotational Semantics for BPPA , 2005 .

[18]  Bob Diertens,et al.  Software (Re-)Engineering with PSF , 2007, ArXiv.

[19]  Jan A. Bergstra,et al.  Thread algebra for strategic interleaving , 2007, Formal Aspects of Computing.

[20]  Alban Ponse,et al.  Risk Assessment for One-Counter Threads , 2008, Theory of Computing Systems.

[21]  Carl A. Gunter,et al.  In handbook of theoretical computer science , 1990 .

[22]  Jan A. Bergstra,et al.  Combining programs and state machines , 2002, J. Log. Algebraic Methods Program..

[23]  Jan A. Bergstra,et al.  Distributed strategic interleaving with load balancing , 2008, Future Gener. Comput. Syst..

[24]  Jan A. Bergstra,et al.  Maurer computers for pipelined instruction processing† , 2008, Mathematical Structures in Computer Science.

[25]  Jan A. Bergstra,et al.  Predictable and Reliable Program Code: Virtual Machine-Based Projection Semantics , 2006 .

[26]  Jan A. Bergstra,et al.  Division Safe Calculation in Totalised Fields , 2008, Theory of Computing Systems.

[27]  Jan A. Bergstra,et al.  Splitting bisimulations and retrospective conditions , 2006, Inf. Comput..

[28]  Jan A. Bergstra,et al.  Thread Algebra with Multi-Level Strategies , 2006, Fundam. Informaticae.

[29]  Jan A. Bergstra,et al.  Projection semantics for rigid loops , 2007, ArXiv.

[30]  Guy L. Steele,et al.  The Java Language Specification , 1996 .

[31]  Peter H. Golde,et al.  C# Language Specification , 2003 .

[32]  Jan A. Bergstra,et al.  Program algebra for sequential code , 2002, J. Log. Algebraic Methods Program..

[33]  Jan A. Bergstra,et al.  Synchronous cooperation for explicit multi-threading , 2007, Acta Informatica.

[34]  Jan A. Bergstra,et al.  Interface Groups for Analytic Execution Architectures , 2006 .