Solaris SPARC Assembly Language Manager

y

Multiply/divide register

wim

Window invalid mask

tbr

Trap base register

Constan ts

 

 

Integer

digits (decimal) (for example, 9876)

 

 

 

0digits (octal) (for example, 05376 )

 

 

 

0xdigits (hexadecimal) (for example, 0x2F)

 

 

 

B'digits (binary) (for example, B'10001111 )

 

 

 

Q'digits (octal) (for example, Q'71035 )

 

 

 

O'digits (octal) (for example, O'71035 )

 

 

 

D'digits (decimal) (for example, D'9876 )

 

 

 

H'digits (hexadecimal) (for example, H'2F)

 

 

 

X'digits (hexadecimal) (for example, X'2F)

 

 

 

R'digits (hexadecimal right) (for example, R'2F is H'2F)

 

 

 

L'digits (hexadecimal left shifted 10) (for example, L'2F is

 

 

 

H'BC00 )

Float

digits [fE j eg[+ j -]digits ]

 

 

 

digits .[digits ][fE j eg[+ j -]digits ]

 

 

 

For example, 5.48E-11is a valid number.

Character

'char [char [char [char]]]'

Operators

 

 

Assignment

=

 

Arithmetic

+,-, *, /

Mod

%

 

Shift

<<, >>

 

Logical

&, , ^,~ (and, or, xor, not)

Grouping

(), {}

 

Unary

lo (least signi￿can t 10 bits)

Unary

hi (most signi￿can t 22 bits)

Address Expressions

 

<identi￿er >

 

Name from source program

<register

 

name>

Register direct

 

[expression ]

 

Indirect

expression .B

 

8 bits

B-26 Language Managers