Browse Prior Art Database

# Method for Generating Valid Sequence Numbers

IP.com Disclosure Number: IPCOM000109336D
Original Publication Date: 1992-Aug-01
Included in the Prior Art Database: 2005-Mar-23
Document File: 2 page(s) / 62K

IBM

## Related People

Shultz, SS: AUTHOR [+2]

## Abstract

A method for generating sequence numbers of restricted composition is disclosed. The method generates these sequence numbers with very high performance. The performance of the method is not a function of the composition of the sequence numbers.

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

Method for Generating Valid Sequence Numbers

A method for generating sequence numbers of restricted
composition is disclosed.  The method generates these sequence
numbers with very high performance.  The performance of the method is
not a function of the composition of the sequence numbers.

Like many methods for sequence number generation, this method
uses a counter as the source of ascending sequence numbers.  An
additional feature is that the value of the counter is post-processed
using the Translate (TR) instruction each time a new sequence number
is assigned.  The post-processing step ensures that the next sequence
number to be assigned is the least number that is both greater than
the just- assigned number and which meets the constraints on the
composition of a sequence number.  The only restriction on this
method is that the all-zero byte (X'00') and the all-one byte (X'FF')
must be allowable as bytes in the sequence number.

To initialize our method, perform these steps:
1.   Determine the set B of binary values which must never appear as
bytes in the sequence number.  In this description, let b1,b2,...bB
be the elements of set B.
2.   Build a 256-byte table T(t0,t1,...,t255) for use with the TR
instruction, as follows:
.   For each ie[0..255] and i/B, set t1=i.
.   For each ie[0..255] and ieB, set t1=ix is the least value
satisfying ix>i and ix/B.
3.   Initialize a counter c to zero.

...