29 lines
553 B
Go
29 lines
553 B
Go
package asm
|
|
|
|
import (
|
|
"strconv"
|
|
)
|
|
|
|
// Number operates with just a number.
|
|
type Number struct {
|
|
Number int
|
|
}
|
|
|
|
// String returns a human readable version.
|
|
func (data *Number) String() string {
|
|
return strconv.Itoa(data.Number)
|
|
}
|
|
|
|
// Number adds an instruction with a number.
|
|
func (a *Assembler) Number(mnemonic Mnemonic, number int) {
|
|
a.Instructions = append(a.Instructions, Instruction{
|
|
Mnemonic: mnemonic,
|
|
Type: TypeNumber,
|
|
Index: Index(len(a.Param.Number)),
|
|
})
|
|
|
|
a.Param.Number = append(a.Param.Number, Number{
|
|
Number: number,
|
|
})
|
|
}
|