为什么当我更改 SI 指向的值时,DI 指向的值会发生变化?

Why does the value that DI is pointing to change when I changed the value that SI is pointing to?

push si
push [bx]
mov si, [si]
mov [bx], si 
mov di, bx
pop bx
pop si
mov [si], bx

这是我的代码。由于某种原因,di 指向的值在 mov[si], bx(最后一行)之后发生变化。 有人知道为什么吗?

编辑:si 和 di 都指向同一数组中的值,该数组定义为 db。 di 指向的值成为数组中它之后的值。

Jester 是正确的,我在一个字节数组中添加了单词,这不仅改变了我试图改变的特定部分,还改变了它周围的部分。