Browse Prior Art Database

Displacement Subtraction Architecture

IP.com Disclosure Number: IPCOM000101163D
Original Publication Date: 1990-Jul-01
Included in the Prior Art Database: 2005-Mar-16
Document File: 2 page(s) / 73K

Publishing Venue

IBM

Related People

Nuechterlein, DW: AUTHOR [+2]

Abstract

Computer processor architectures traditionally incorporate some sort of "Base PLUS Displacement" addressing method for use by instructions. This method involves the calculation of an effective address through the ADDITION of a base address, often contained within a register, to a displacement value, commonly contained within the instruction machine code.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Displacement Subtraction Architecture

       Computer processor architectures traditionally
incorporate some sort of "Base PLUS Displacement" addressing method
for use by instructions.  This method involves the calculation of an
effective address through the ADDITION of a base address, often
contained within a register, to a displacement value, commonly
contained within the instruction machine code.

      In order to allow for both positive and negative displacements,
the displacement value is usually stored within the machine code in
"2's complement" form.  A characteristic of "2's complement" form is
that the range of values that can be represented in an (n+1)-bit
field is -2n < x < 2n -1.  For example, a four-bit field can be
used to represent values ranging from -8 to +7.  As can be seen, a
positive magnitude of 2n cannot be represented in an (n+1)-bit field
in "2's complement" form.  Unfortunately, there are many instances in
which this particular value would be of great use in a program.  This
is due to the fact that program data is usually stored in units that
are an even number of bytes, and more specifically, in units of bytes
that are integral powers of 2.  If this data were stored "backwards"
in memory (i.e., the beginning of the data was located at a higher
memory address than the end of the data), then a "stride" value of
-2n could be used to step "back" through the data.  However, this is
a very unnatural and awkward manner of storing data.  Nevertheless,
this very technique has been used to get around the problem of not
being able to step "forward" by a value of 2n .

      A method by which the practicality of storing values in "2's
complement form" may be retained, yet the advantage of be...