【8086汇编-Day6】关于loop的实验

 

  • 实验内容

 

  

  

  

  

  

  

  

  

  

  

  

  

  因为是要复制代码,所以常规来做是取代码段地址来用,所以把cs值mov给ax,但是这只是临时的,ax之后还有别的用途,那就把指令当作数据来存(把ax值  mov给ds,表示这一段地址用作代码段,也方便后面内容拷贝的工作)

  程序中使用了es拓展段寄存器存放目的地址来做拷贝。(0020:0000即0000:0200)

  第二个空。。。看看mov al [bx]的地址是多少就能算出来要拷贝多少字节。即28个字节,通过loop28次实现,即给cx赋值1Ch

 

  • 实验总结

   给寄存器赋值时注意开头为字母的数值前面应加上0,表示这是一个数值。

  再给内存空间传字数据时,应加上word ptr以标识

  选做里面栈里面对数据的操作是对字数据,所以这压栈的时候,需要关注下小端法,不然数据存进去就是02,01,04,03,,,,比如push ax,ax里的值应  该是0201h这样写

  再有一点就是最后一个实验,长度我多了五个字节,多在mov ax datas 跟mov ds ax 上,这不是我写的,集成环境里方便放一些初始数据,有这么一个datas段,然后把他地址给ds,我这里用不到,但我一开始没注意。。。

 

转载于:https://www.cnblogs.com/hackmylife/p/9984293.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值