摘要:
Lab1 代码 代码 结果 结果 Lab2 代码 代码 结果 结果 Lab3 代码 代码 结果 结果 阅读全文
摘要:
实验一 实验二 实验三 实验四 实验五 实验六 总结 在集成环境下,内存从0770段开始按照段的先后顺序和内容多少分配,并且分配的都是16的倍数 关于实际占用的空间公式的话其实极容易想到(假设有N个字节数据),N+15是为了判断最后几个字节数据(去掉前面的16的最大倍数个数据)是否要另起新段。比如去 阅读全文
摘要:
实验内容 实验内容 因为是要复制代码,所以常规来做是取代码段地址来用,所以把cs值mov给ax,但是这只是临时的,ax之后还有别的用途,那就把指令当作数据来存(把ax值 mov给ds,表示这一段地址用作代码段,也方便后面内容拷贝的工作) 程序中使用了es拓展段寄存器存放目的地址来做拷贝。(0020: 阅读全文
摘要:
练习一 练习一 结果展示: 这个程序执行下来貌似打印了数字36,但其实是两个数字3、6; 这段就是用来打印3;首先ah里放2,跟后面的int 21h结合起来就是调用21号中断例程的2号子程序,用来打印到标准输出。mov dl,3可以理解,我们是想打印数字3,可是事实上并没有那么简单,我们打印字符其实 阅读全文
摘要:
debug的使用 偷个懒,之前写过了这里不再赘述 实验 1)实验1 要求:用e将一些数据写入内存,用a写入一段程序,t 逐条执行 观察具体参数变化,并探究现象 1.e写入,d检查 2.a写入程序 3.t 逐条执行 这几步执行完,寄存器 ax=3130,这就体现了小端法:取低地址单元地址为字数据地址, 阅读全文
摘要:
数组越界 数组越界,是刚开始学习编程时,就不断被别人提醒的一个点,“相当可怕”。获取不合理数值,造成程序异常or操作计算机重要内存,造成威胁。。。原因是什么呢?数组在汇编中以栈机制实现,汇编中数组的内存的分配方式与数组越界的风险有很大关系。今天做个小实验,来简单探讨下这个。并拓展一下,这样的“小问题 阅读全文
摘要:
Ⅰ· 无病呻吟 学一门语言,不动手实验是学不好的,在实验中不断遇坑然后解决,才有进益。所以写一下我在第一次汇编实验中的所思所想(王爽《汇编语言》第二章章末实验)。 Ⅱ · 实验内容 题解思路: 这个题需要我们向内存中写入一段代码并单步执行,仔细看过我上篇博文给出的链接,很容易想到,写入一段东西 有两 阅读全文