Bytes are the basic unit of data storage and transmission in computers, and thus they are fundamental to the Roots function library and ARMR. Bytes may contain Ascii letters, numbers, and punctuation, or any other binary information.
Most Roots operations involve data blocks. Data blocks are structured in terms of bytes. To describe the space allocated for the entire block, we must know the number of lines (nline) in the block and the number of characters, or bytes, per line (cpl). Here we have a data block consisting of 30 bytes, made up of 6 lines of 5 bytes per line.
cpl=5 |
|||||
1 | B 1 | B 2 | B 3 | B 4 | B 5 |
2 | B 6 | B 7 | B 8 | B 9 | B10 |
3 | B11 | B12 | B13 | B14 | B15 |
4 | B16 | B17 | B18 | B19 | B20 |
5 | B21 | B22 | B23 | B24 | B25 |
6 | B26 | B27 | B28 | B29 | B30 |
nline=6
Rectangular data blocks are well suited to ARMR's memory based processing. Equally important, rectangular data blocks are a natural structure for fixed record length data files. Only fixed record length files can be accessed randonly with some degree of efficiency.
Most Roots operations involve consecutive byte groups. A group of consecutive bytes is called a field. Fields are contained within data blocks. To address a particular field, the programmer specifies the first byte of the field and the number of bytes comprising the field.