Word/number and number/word mapping
First Claim
1. A method of operating a data processing system to map from a string of elements to a respective number;
- the data processing system including;
circuitry for obtaining string data indicating a string of elements;
mapping data for mapping from each of a plurality of strings to a respective number; and
a processor connected for receiving the string data and for accessing the mapping data;
the mapping data including a plurality of data units;
the data units including first, second, and third sequences of data units;
the string indicated by the string data having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;
the first sequence of data units including;
prefix element information indicating the elements of the prefix substring;
first suffix ending information indicating a first number of suffix endings; and
branching information;
the second sequence of data units including;
a second sequence start data unit; and
second suffix ending information indicating a second number of suffix endings;
the third sequence of data units including;
a third sequence start data unit;
suffix element information indicating the elements of the suffix substring;
a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and
third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit;
the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicates a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit so that if the branch indicating data indicates a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;
the method comprising;
operating the processor to receive the string data; and
operating the processor to use the string data and the mapping data to obtain the string'"'"'s respective number;
the act of operating the processor to use the string data and the mapping data comprising;
accessing the first sequence of data units;
using the prefix element information and the string data to determine that the elements of the prefix substring are indicated by the prefix element information;
using the first suffix ending information to obtain first number data indicating the first number of suffix endings;
using the branching information to obtain the branch indicating data, the third sequence branch data, and the second number data;
if the branch indicating data indicates a branch to the third sequence of data units, accessing the third sequence of data units using the third sequence branch data;
using the third suffix ending information to obtain third number data indicating the third numbers of suffix endings;
using the third element information and the string data to determine that the elements of the suffix substring are indicated by the third element information; and
using the first number data, the second number data, and the third number data to obtain the string'"'"'s respective number.
3 Assignments
0 Petitions
Accused Products
Abstract
A compactly stored word list that includes a directed graph data structure is used for word to number (W/N) and number to word (N/W) mapping. Each word accepted by the data structure is mapped to a unique corresponding number within a dense set of numbers ranging from zero to one less than the total number of acceptable words. Some common suffixes are collapsed into shared branches, which is possible because the numbers are not stored within the word list. In addition, some branches of the data structure can be skipped during mapping because of information associated with branch points. That information permits the mapping scan to continue with a next branch or with an alternative branch. That information also indicates the number of suffix endings in the next branch; this number is used to keep a count of the word endings during word to number mapping; it is also used both to determine whether to continue with the next branch and also to reduce the number being mapped during number to word mapping. The branching information includes a full length pointer to the next branch or a shorter length pointer index to a table in which the pointer is stored. In either case, the number of suffix endings in the next branch is annexed to the pointer. The pointers and pointer indexes are assigned iteratively, the shortest pointer indexes first, then longer pointer indexes, and finally the full length pointers. In each case, a pointer or pointer index is assigned only if beneficial, and the assignment of pointers and pointer indexes is cleared and redone if a better assignment can be made.
51 Citations
48 Claims
-
1. A method of operating a data processing system to map from a string of elements to a respective number;
-
the data processing system including; circuitry for obtaining string data indicating a string of elements; mapping data for mapping from each of a plurality of strings to a respective number; and a processor connected for receiving the string data and for accessing the mapping data; the mapping data including a plurality of data units;
the data units including first, second, and third sequences of data units;the string indicated by the string data having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending; the first sequence of data units including; prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the second sequence of data units including; a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; the third sequence of data units including; a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicates a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit so that if the branch indicating data indicates a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the method comprising; operating the processor to receive the string data; and operating the processor to use the string data and the mapping data to obtain the string'"'"'s respective number;
the act of operating the processor to use the string data and the mapping data comprising;accessing the first sequence of data units; using the prefix element information and the string data to determine that the elements of the prefix substring are indicated by the prefix element information; using the first suffix ending information to obtain first number data indicating the first number of suffix endings; using the branching information to obtain the branch indicating data, the third sequence branch data, and the second number data; if the branch indicating data indicates a branch to the third sequence of data units, accessing the third sequence of data units using the third sequence branch data; using the third suffix ending information to obtain third number data indicating the third numbers of suffix endings; using the third element information and the string data to determine that the elements of the suffix substring are indicated by the third element information; and using the first number data, the second number data, and the third number data to obtain the string'"'"'s respective number. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of operating a data processing system to map from a number to a respective string of elements;
-
the data processing system including; circuitry for obtaining map number data indicating a number; mapping data for mapping from each of a plurality of numbers to a respective string of elements; and a processor connected for receiving the map number data and for accessing the mapping data; the mapping data including a plurality of data units;
the data units including first, second, and third sequences of data units;the number'"'"'s respective string of elements having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending; the first sequence of data units including; prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the second sequence of data units including; a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; the third sequence of data units including; a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicates a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit so that if the branch indicating data indicates a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the method comprising; operating the processor to receive the map number data; and operating the processor to use the map number data and the mapping data to obtain the respective string of the number indicated by the map number data;
the act of operating the processor to use the map number data and the mapping data comprising;accessing the first sequence of data units; using the prefix element information to obtain prefix data indicating the elements of the prefix substring; using the first suffix ending information to obtain first number data indicating the first number of suffix endings; using the branching information to obtain the branch indicating data, the third sequence branch data, and the second number data; if the branch indicating data indicates a branch to the third sequence of data units, accessing the third sequence of data units using the third sequence branch data; using the third suffix ending information to obtain third number data indicating the third number of suffix endings; using the map number data, the first number data, the second number data, and the third number data to find the substring ending data unit; using the suffix element information to obtain suffix data indicating the elements of the suffix substring; and using the prefix data and the suffix data to obtain the respective string of elements of the number indicated by the map number data. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. An article of manufacture for use in a system that includes:
-
a processor;
the processor obtaining string data indicating a string of elements;the string having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending; the article comprising; memory for storing data; and mapping data stored in the memory so that the processor can access the mapping data for mapping from each of a plurality of strings to a respective number; the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the processor can access the first sequence of data units, use the prefix element information and the string data to determine that the elements of the prefix substring are indicated by the prefix element information, use the first suffix ending information to obtain first number data indicating the first number of endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, and the third suffix ending information being positioned within the third sequence of data units so that the processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the third element information and the string data to determine that the elements of the suffix substring are indicated by the third element information; and
use the first number data, the second number data, and the third number data to obtain the string'"'"'s respective number. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A system comprising:
-
circuitry for obtaining string data indicating a string of elements;
the string having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;mapping data for use in mapping between each of a plurality of strings and a respective number; a processor connected for receiving the string data and for accessing the mapping data; the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the processor can access the first sequence of data units, use the prefix element information and the string data to determine that the elements of the prefix substring are indicated by the prefix element information, use the first suffix ending information to obtain first number data indicating the first number of endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, and the third suffix ending information being positioned within the third sequence of data units so that the processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the third element information and the string data to determine that the elements of the suffix substring are indicated by the third element information; and
use the first number data, the second number data, and the third number data to obtain the string'"'"'s respective number. - View Dependent Claims (31, 32)
-
-
33. An article of manufacture for use in a system that includes circuitry for obtaining number data indicating a number and a processor connected for receiving the number data;
-
the article comprising a memory for storing data and mapping data stored in the memory so that the processor can access the mapping data for mapping from each of a plurality of numbers to a respective string of elements;
the respective string of the number indicated by the number data having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the processor can access the first sequence of data units, use the prefix element information to obtain prefix data indicating the elements of the prefix substring, use the first suffix ending information to obtain first number data indicating the first number of suffix endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, the third suffix ending information, and the substring ending data unit being positioned within the third sequence of data units so that the processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the map number data, the first number data, the second number data, and the third number data to find the substring ending data unit;
use the suffix element information to obtain suffix data indicating the elements of the suffix substring; and
use the prefix data and the suffix data to obtain the respective string of elements of the number indicated by the map number data. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A system comprising:
-
circuitry for obtaining map number data indicating a number; mapping data for use in mapping each of a plurality of numbers to a respective string of elements;
the respective string of the number indicated by the map number data having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;a processor connected for receiving the map number data and connected for accessing the mapping data; the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the processor can access the first sequence of data units, use the prefix element information to obtain prefix data indicating the elements of the prefix substring, use the first suffix ending information to obtain first number data indicating the first number of suffix endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, the third suffix ending information, and the substring ending data unit being positioned within the third sequence of data units so that the processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the map number data, the first number data, the second number data, and the third number data to find the substring ending data unit;
use the suffix element information to obtain suffix data indicating the elements of the suffix substring; and
use the prefix data and the suffix data to obtain the respective string of elements of the number indicated by the map number data. - View Dependent Claims (44)
-
-
45. An article of manufacture for use in a system that includes circuitry for obtaining string data indicating a string of elements and a processor connected for receiving the string data;
- the string having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;
the article comprising; memory for storing data; and mapping data stored in the memory so that the processor can access the mapping data for mapping from each of a plurality of strings to a respective number; the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the processor can access the first sequence of data units, use the prefix element information and the string data to determine that the elements of the prefix substring are indicated by the prefix element information, use the first suffix ending information to obtain first number data indicating the first number of endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, and the third suffix ending information being positioned within the third sequence of data units so that the processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the third element information and the string data to determine that the elements of the suffix substring are indicated by the third element information; and
use the first number data, the second number data, and the third number data to obtain the string'"'"'s respective number.
- the string having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;
-
46. An article of manufacture for use in a system that includes circuitry for obtaining number data indicating a number and a processor connected for receiving the number data;
-
the article comprising; memory for storing data; and mapping data stored in the memory so that the processor can access the mapping data for mapping from each of a plurality of numbers to a respective string of elements;
the respective string of the number indicated by the number data having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the processor can access the first sequence of data units, use the prefix element information to obtain prefix data indicating the elements of the prefix substring, use the first suffix ending information to obtain first number data indicating the first number of suffix endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, the third suffix ending information, and the substring ending data unit being positioned within the third sequence of data units so that the processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the map number data, the first number data, the second number data, and the third number data to find the substring ending data unit;
use the suffix element information to obtain suffix data indicating the elements of the suffix substring; and
use the prefix data and the suffix data to obtain the respective string of elements of the number indicated by the map number data.
-
-
47. An article of manufacture for use in a system that includes circuitry for obtaining string data indicating a string of elements and a digital processor connected for receiving the string data;
- the string having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;
the article comprising; digital memory for storing data in a form accessible by the digital processor; and mapping data stored in the digital memory so that the digital processor can access the mapping data for mapping from each of a plurality of strings to a respective number; the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the digital processor can access the first sequence of data units, use the prefix element information and the string data to determine that the elements of the prefix substring are indicated by the prefix element information, use the first suffix ending information to obtain first number data indicating the first number of endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the digital processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the digital processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the digital processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, and the third suffix ending information being positioned within the third sequence of data units so that the digital processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the third element information and the string data to determine that the elements of the suffix substring are indicated by the third element information; and
use the first number data, the second number data, and the third number data to obtain the string'"'"'s respective number.
- the string having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;
-
48. An article of manufacture for use in a system that includes circuitry for obtaining number data indicating a number and a digital processor connected for receiving the number data;
-
the article comprising; digital memory for storing data in a form accessible by the digital processor; and mapping data stored in the digital memory so that the digital processor can access the mapping data for mapping from each of a plurality of numbers to a respective string of elements;
the respective string of the number indicated by the number data having a prefix substring of elements and a suffix substring of elements, the elements of the suffix substring following the elements of the prefix substring, the suffix substring having a suffix ending;the mapping data comprising; a first sequence of data units;
the first sequence of data units comprising;prefix element information indicating the elements of the prefix substring; first suffix ending information indicating a first number of suffix endings; and branching information; the prefix element information, the first suffix ending information, and the branching information being positioned within the first sequence of data units so that the digital processor can access the first sequence of data units, use the prefix element information to obtain prefix data indicating the elements of the prefix substring, use the first suffix ending information to obtain first number data indicating the first number of suffix endings, and use the branching information to branch either to the second sequence of data units or to the third sequence of data units; a second sequence of data units;
the second sequence of data units comprising;a second sequence start data unit; and second suffix ending information indicating a second number of suffix endings; and a third sequence of data units;
the third sequence of data units comprising;a third sequence start data unit; suffix element information indicating the elements of the suffix substring; a substring ending data unit indicating the suffix substring'"'"'s suffix ending; and third suffix ending information indicating a third number of suffix endings between the third sequence start data unit and the substring ending data unit; the branching information being information that the digital processor can use to obtain branch indicating data, second sequence branch data, third sequence branch data, and second number data;
the branch indicating data indicating whether to branch to the second sequence of data units or to the third sequence of data units;
the second sequence branch data indicating a location of the second sequence start data unit so that if the branch indicating data indicate a branch to the second sequence of data units, the digital processor can use the second sequence branch data to access the second sequence of data units;
the third sequence branch data indicating a location of the third sequence start data unit from which a location of the third sequence start data unit can be obtained so that if the branch indicating data indicate a branch to the third sequence of data units, the digital processor can use the third sequence branch data to access the third sequence of data units;
the second number data indicating the second number of suffix endings;the third sequence start data unit, the suffix element information, the third suffix ending information, and the substring ending data unit being positioned within the third sequence of data units so that the digital processor can access the third sequence of data units using the third sequence branch data;
use the third suffix ending information to obtain third number data indicating the third number of suffix endings;
use the map number data, the first number data, the second number data, and the third number data to find the substring ending data unit;
use the suffix element information to obtain suffix data indicating the elements of the suffix substring; and
use the prefix data and the suffix data to obtain the respective string of elements of the number indicated by the map number data.
-
Specification