采纳答案说:DOS程序段起始地址必须是16倍数。
是不对的。
不是必须。
只是一种选项。
应该说:编译软件默认的分段方式是,段起始地址是16的整数倍。
楼主可以再试试下面的两种写法:
-----------------------
a segment BYTE
db 1,2,3,4,5,6,7,8
a ends
b segment BYTE
db 1,2,3,4,5,6,7,8
b ends
-----------------------
a segment PAGE
db 1,2,3,4,5,6,7,8
a ends
b segment PAGE
db 1,2,3,4,5,6,7,8
b ends
-----------------------
看一看,各个段,是不是可以接续下去了。
段,是不是,也可以分开的更远。
DOS程序段起始地址必须是16倍数
段地址X16+偏移地址=实际地址
写了两遍segment的关系吧