• 汇编实验四 [bx]和loop的使用


    任务一     

    综合使用loop[bx],编写完整汇编源程序,实现向内存b80007b8开始的连续16个字单元重复填充字数据0430h

    1、源代码,保存为t3.asm

    编译、连接后运行该代码,结果如下图:

    2、将源代码程序中字数据0403h修改为0441h后,再次运行结果如图:

    3、将源代码程序中字数据0403h修改为0603h后,再次运行结果如图:

    由以上1、2、3的对比,我们可以看出bx中前两个字节控制颜色,后两个字节控制形状。

    任务二    

     综合使用loop[bx],编写完整汇编源程序,实现向内存0200~023f依次传送数据0~633FH)。

    1、源代码,保存为t4.asm:

    2、汇编、连接无误后,进入debug环境使用d命令查看,如下图:

     用d命令可以看到传送数据成功。

    进入debug,先用r命令查看个寄存器中的数据,我用t命令单步执行观察了0:200~0:202的变化:

    如上,确认了将00,01,02传送到该区域,由于单步执行次数过多,剩下的部分我用g命令一次执行完了

    任务三  

    补全源代码

    因为复制的是汇编指令,所以必须为cs

    汇编、连接后进入debug调试环境,使用r命令查看cx的值,查看总长度:

    用u命令进行反汇编,可以看出从第一条指令开始到mov  ax,4c00h的长度为十六进制表示为17,即十进制的23;

    然后修改t5.asm中源代码,把cx改为0017h:

    汇编连接后进入debug调试环境,r命令查看cx,u命令反汇编:

    用t命令和p命令调试后结果:

    d命令查看0:200~0:23F如图:

    与前面两个u命令反汇编得到的结果对比,可以看出指令被写到内存0:200处。

    总结与体会

      复习了实验三的汇编源程序的编写,汇编、连接,学习新的[bx]和loop的使用,发现在debug中对g命令与p命令的使用还不太熟悉,需要加强基础知识的复习巩固。

      对于选做部分,因为自己对栈的使用还不是很了解,所以在此没有用栈的特性来做。

  • 相关阅读:
    Emote木马分析
    CentOS7安装部署MongoDB
    CentOS7搭建FastDFS文件管理服务器
    CentOS7搭建FTP服务器
    20179301《网络攻防实践》第九周作业
    20179301《网络攻防实践》第七周作业
    20179301 段晓庆 《网络攻防》第六周总结
    20179301 《网络攻防技术》第四周总结
    20179301 段晓庆 《网络攻防》第三周总结
    2017-2018-2 20179301《网络攻防技术》第一周作业
  • 原文地址:https://www.cnblogs.com/ljzww/p/9975427.html
Copyright © 2020-2023  润新知