|
|
Returns the length of a data structure in bits or bytes.
symlen (pathspec [units])
symlen:u32 (pathspec:str [units:u32=$8])
- pathspec
A path specification, as described in chapter 5, "Symbolic
Formatting/Symbolic Access."
- units
Specifies the units (that is, bit width) in which the result is given.
1 means bits, 8 means bytes, 32 means words. The default is bytes.
The symbolic length is rounded up to the nearest whole unit.
$nmdebug > symopen gradtyp.demo
Opens the symbolic data type file gradtyp.demo. It is assumed that the
Debug variable addr contains the address of a
StudentRecord data structure in virtual memory. The following
code fragment is from this file:
CONST MINGRADES = 1; MAXGRADES = 10;
MINSTUDENTS = 1; MAXSTUDENTS = 5;
TYPE
GradeRange = MINGRADES .. MAXGRADES;
GradesArray = ARRAY [ GradeRange ] OF integer;
Class = ( SENIOR, JUNIOR, SOPHOMORE, FRESHMAN );
NameStr = string[8];
StudentRecord = RECORD
Name : NameStr;
Id : Integer;
Year : Class;
NumGrades : GradeRange;
Grades : GradesArray;
END;
$nmdebug > wl SYMLEN("StudentRecord")
$40
Returns the size of a complete StudentRecord in bytes.
$nmdebug > wl SYMLEN("StudentRecord" 1)
$200
Returns the size of a complete StudentRecord in bits.
$nmdebug > wl SYMLEN("StudentRecord.Grades" #32)
$a
Returns the size of grades field in a StudentRecord in words.
None
|