assembler almost finished
This commit is contained in:
parent
01188ab9a8
commit
1f29ed7d14
6 changed files with 37 additions and 24 deletions
|
|
@ -94,6 +94,13 @@ var naslov_programa int
|
|||
|
||||
var zacetni_naslov int
|
||||
|
||||
type M_zapis struct {
|
||||
odmik int
|
||||
dolzina int
|
||||
}
|
||||
|
||||
var M_tabela []M_zapis
|
||||
|
||||
type ukaz interface {
|
||||
Velikost() int
|
||||
GetAddr() int
|
||||
|
|
@ -767,6 +774,8 @@ func drugi_prehod(AST *[]ukaz) {
|
|||
val.odmik = st
|
||||
} else {
|
||||
val.odmik = simbolna_tabela[val.naslov]
|
||||
m := M_zapis{val.lc + 1, 5}
|
||||
M_tabela = append(M_tabela, m)
|
||||
}
|
||||
case *format_D: bazno_dovoljeno = false
|
||||
case *format_D_n: switch val.ime {
|
||||
|
|
@ -881,6 +890,10 @@ func generacija(AST *[]ukaz) {
|
|||
}
|
||||
}
|
||||
fmt.Printf("T: %x, %x, %s\n", line_addr, line_len, line)
|
||||
for _, el := range M_tabela {
|
||||
fmt.Printf("M: %06x, %02x \n", el.odmik, el.dolzina)
|
||||
}
|
||||
fmt.Printf("END %06x", zacetni_naslov)
|
||||
}
|
||||
|
||||
func izpis(AST *[]ukaz) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue