Method and apparatus for converting between different digital data representation formats
First Claim
1. A method for converting digital data representations, comprising:
- receiving input data, the input data including a plurality of bytes, each byte having a plurality of digits arranged in positions;
selecting a first set of digits from the bytes having a first digit position;
shifting the digits in the first set of digits to a second digit position to generate a first resultant;
selecting a second set of digits from the bytes having a third digit position;
shifting the digits in the second set of digits to a fourth digit position to generate a second resultant; and
combining the first and second resultants to generate output data.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for converting digital data representations, such as network addresses of different computer networks. Input data, which in one embodiment includes a hexadecimal network address, contains a plurality of bytes, with each byte having a plurality of digits arranged in positions. A first set of digits from the bytes is selected having a first digit position. The digits in the first set are shifted to a second digit position to generate a first resultant. A second set of digits is selected having a third digit position. The digits in the second set are shifted to a fourth digit position to generate a second resultant. The first and second resultants are summed to generate a converted output network address.
-
Citations
21 Claims
-
1. A method for converting digital data representations, comprising:
-
receiving input data, the input data including a plurality of bytes, each byte having a plurality of digits arranged in positions;
selecting a first set of digits from the bytes having a first digit position;
shifting the digits in the first set of digits to a second digit position to generate a first resultant;
selecting a second set of digits from the bytes having a third digit position;
shifting the digits in the second set of digits to a fourth digit position to generate a second resultant; and
combining the first and second resultants to generate output data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
masking all the digits except those in the first digit position.
-
-
3. The method of claim 2, wherein masking all the digits of the plurality of bytes except those in the first digit position further includes:
-
defining a first mask constant to mask the most significant digits of each byte; and
combining the first mask constant and the input data with a logical AND operation.
-
-
4. The method of claim 1, wherein selecting a second set of digits includes:
masking all the digits except those in the third digit position.
-
5. The method of claim 4, wherein masking all the digits of the plurality of bytes except those in the third digit position includes:
-
defining a second mask constant to mask the least significant digits of each byte; and
combining the second mask constant and the input data with a logical AND operation.
-
-
6. The method of claim 1, wherein shifting the digits in the first set of digits to a second digit position includes:
shifting the digits in the first set of digits by one digit to the left.
-
7. The method of claim 1, wherein shifting the digits in the second set of digits to a fourth digit position includes:
shifting the digits in the second set of digits by one digit to the right.
-
8. The method of claim 1, wherein combining the first and second resultants includes:
adding the first and second resultants.
-
9. The method of claim 1, wherein selecting the first set of digits and said selecting the second set of digits occur in parallel.
-
10. The method of claim 1, wherein receiving input data includes:
receiving an address, the address including a plurality of bytes, with each byte having a plurality of digits arranged in positions.
-
11. An apparatus, comprising:
-
a processor adapted to receive input data, the input data including a plurality of bytes, each byte having a plurality of digits arranged in positions; and
a program storage device coupled to the processor and adapted to store instructions, that when executed by the processor, perform a method, comprising;
selecting a first set of digits from the bytes having a first digit position;
shifting the digits in the first set of digits to a second digit position to generate a first resultant;
selecting a second set of digits from the bytes having a third digit position;
shifting the digits in the second set to a fourth digit position to generate a second resultant; and
combining the first and second resultants to generate output data. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
defining a first mask constant to mask the most significant digits of each byte; and
combining the first mask constant and the input data with a logical AND operation.
-
-
14. The apparatus of claim 11, wherein selecting a second set of digits includes masking all the digits except those in the third digit position.
-
15. The apparatus of claim 14, wherein masking all the digits of the plurality of bytes except those in the third digit position includes:
-
defining a second mask constant to mask the least significant digits of each byte; and
combining the second mask constant and the input data with a logical AND operation.
-
-
16. The apparatus of claim 11, wherein shifting the digits in the first set of digits to a second digit position includes shifting the digits in the first set of digits by one digit to the left.
-
17. The apparatus of claim 11, wherein shifting the digits in the second set of digits to a fourth digit position includes shifting the digits in the second set of digits by one digit to the right.
-
18. The apparatus of claim 11, wherein combining the first and second resultants includes adding the first and second resultants.
-
19. The apparatus of claim 11, wherein selecting the first set of digits and selecting the second set of digits occur in parallel.
-
20. The apparatus of claim 11, wherein receiving input data includes receiving an address, the address including a plurality of bytes, with each byte having a plurality of digits arranged in positions.
-
21. An apparatus, comprising:
-
means for receiving input data, the input data including a plurality of bytes, each byte having a plurality of digits arranged in positions;
means for selecting a first set of digits from the bytes having a first digit position;
means for shifting the digits in the first set of digits to a second bit position to generate a first resultant;
means for selecting a second set of digits from the bytes having a third digit position;
means for shifting the digits in the second set of digits to a fourth digit position to generate a second resultant; and
means for combining the first and second resultants to generate output data.
-
Specification