您的位置:首页 > 其它

汇编学习笔记-一段安全的空间及段前缀的使用.

2012-12-12 10:55 459 查看
一般情况下,0:200-0:2ff(00200h-002ffh)的256个字节空间.

如何将0fff:0-0fff:b单元中的数据的复制到0:200-0:20b 中.

0-b = 0-b 设置一个变量为bx

mov bx,0

mov cx,12 ;设置循环次数

s:mov ax,FFFFh ;此为字

mov ds,ax ; 设置段地址为FFFF 偏移地址默认为0

mov dl,[bx] ;访问内存单元bx中的内容 送入dl中,dl是字节 bx为偏移地址0,段地址ds FFFF 那么访问内存单元ffff:0中的内容,送入到 dl中.dl=ffff*16+0,dl存储着ffff:0的数据

;;数据要送入到00200:0中,那么首先设置段地址及偏移地址

mov ax,200h

mov ds,ax ;此时段地址为00200h

mov [bx],dl 内存单元bx 则是00200h*16+bx ,dl则存放着ffff:0中的数据,

inc bx

loop s

源目标单元ffff:x和目标单元0020:x 相距大于64kb.在不同的64kb段里,以上程序

有两个mov ds,ax 则每循环一次都要进行一次计算.

mov ax,ffffh

mov ds,ax

mov ax,0020h

mov es,ax

mov cx,12

s:mov dl,[bx]

mov es:[bx],dl ;其实就是指明段前缀[段地址],进行区别/

inc bx

loop s
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: