Commit | Line | Data |
---|---|---|
39bec121 TW |
1 | * .struct |
2 | * .union | |
3 | * .tag | |
4 | REAL_REC .struct ; stag = REAL_REC | |
5 | NUM .int ; NUM = 0 | |
6 | DEN .int ; DEN = 1 | |
7 | REAL_LEN .endstruct ; REAL_LEN = 2 | |
8 | ||
9 | add REAL + REAL_REC.DEN, a ; 000000 0001 | |
10 | .bss REAL, REAL_LEN ; 000000 0000 (len = 2) | |
11 | ||
12 | CPLX_REC .struct | |
13 | REALI .tag REAL_REC | |
14 | IMAGI .tag REAL_REC | |
15 | CPLX_LEN .endstruct | |
16 | ; apply the CPLX_REC structure format to .bss var COMPLEX | |
17 | ||
18 | .bss COMPLEX, CPLX_LEN ; 000002 0000 (len = 4) | |
19 | COMPLEX .tag CPLX_REC | |
20 | add COMPLEX.REALI, a ; 000001 0002 | |
21 | stl a, COMPLEX.REALI ; 000002 8002 | |
22 | add COMPLEX.IMAGI, b ; 000003 0104 | |
23 | ||
24 | ; anonymous struct; symbols become global | |
25 | .struct | |
26 | X .int | |
27 | Y .int | |
28 | Z .int | |
29 | .endstruct | |
30 | ||
31 | BIT_REC .struct | |
32 | STREAM .string 64 ; | |
33 | BIT7 .field 7 ; bit7 = 64 | |
34 | BIT9 .field 9 ; bit9 = 64 | |
35 | BIT10 .field 10 ; bit10 = 65 | |
36 | X_INT .int ; x_int = 66 | |
37 | BIT_LEN .endstruct ; bit_len = 67 | |
38 | ||
39 | .bss BITS, BIT_LEN ; 000006 0000 (len = 67) | |
40 | BITS .tag BIT_REC | |
41 | add BITS.BIT7,a ; 000004 0046 | |
42 | and #007Fh, a ; 000005 f030 | |
43 | ; 000006 007f | |
44 | .end |