使用汇编语言 8086 创建链表



您可以在特定的内存位置/地址中读取和写入数据/字符串吗? 我计划在 8086 中制作链表,但我不知道如何从特定内存地址读取数据以及如何使用相同的变量将数据存储在不同的内存地址中。 这可能吗? 如果是,如何?

您可以像这样链接元素:

jmp start
element0 db 10
element1 db "jsdafélasjfdélasjd"
element2 db "lkjfasljf"
element3 db 12, 34
element4 db  "asfd"
;etc.
links:
dw element0
dw element1
dw element2
dw element3
dw element4
start:
push cs
pop ds
lea si, links
add si, (3*2)
;si is now set to the offset of element3

如果程序将插入新元素,则在列表末尾留下足够的位置很重要。

当然,例如

mov di, [di]
mov di, [di]

通过链表前进几个位置,其中next链接是节点中的第一件事(如果不是,请添加常量偏移量)。

这里更大的问题是分配和解除分配这些节点。

相关内容

  • 没有找到相关文章

最新更新