题目链接:https://pan.baidu.com/s/1t_I5rpynQhPPtFH7eDxAqg 提取码:7oj0 拖进IDA里进行反汇编,程序逻辑比较简单。 我们点进sub_100F9函数看看怎么对输入进行处理的。 可以发现是对每个字符的,右移3位的值与左移五位的值,进行异或。 然后是对处 ...
分类:
其他好文 时间:
2018-11-25 14:32:44
阅读次数:
248
任务一: 将代码写入记事本,并生成exe文件,代码如下: 在debug下用r命令查看寄存器的值: cs = 15F5 使用u命令反汇编代码并用g命令执行,用d命令查看 CPU执行程序前,程序返回前,cs=15f5,ss=15f4,ds=15f3 程序加载后,data段地址 +2 = code段地址 ...
分类:
编程语言 时间:
2018-11-25 10:12:15
阅读次数:
286
恢复内容开始 实验5 编写、调试具有多个段的程序 (1)将下面的程序编译连接,用Debug加载、跟踪,然后回答问题。 编译、连接生成可执行文件: 用debug进行反汇编: 执行程序,但不返回: (由反汇编中的ip偏移地址中看出,在至mov ax,4c00指令前的ip应指到001d,是故使用g 1d执 ...
分类:
其他好文 时间:
2018-11-25 01:19:39
阅读次数:
256
实验内容: 1.将老师给的程序框架编译、连接后利用反汇编u查看代码长度,利用g命令将程序运行至在mov ax,4c00h结束语句前。 (1)发现data中的数据被改为代码中指定的数据。 (2)程序返回前,cs=076C、ss=076B、ds=076A。 (3)程序运行后,设code段地址为X,则da ...
分类:
其他好文 时间:
2018-11-24 19:52:04
阅读次数:
226
汇编实验五 实验任务(1) 实验代码如下 编译连接过程如下(后续实验便不再展示编译连接过程): 对该查询执行反汇编操作 由u命令可知该程序最后执行与001d的位置,故要查看程序返回前data段中的数据应该用g命令定位到001d的位置,得出程序执行前的cs,ss,ds的值。 再通过d命令可以得知dat ...
分类:
其他好文 时间:
2018-11-24 16:41:08
阅读次数:
212
实验1: 一:将代码输入在6.txt中,将其保存在masm文件夹下,并改后缀为asm 二:使用dosbox编译,调试该文件,连接完成后使用debug中的r命令查看寄存器中的值 从中我发现,cs的值为076c,再使用u命令反汇编实验代码,用g命令运行,再用d命令查看data段中的值 从中我发现,在CP ...
分类:
其他好文 时间:
2018-11-24 14:37:34
阅读次数:
241
一:代码如下 经过编译连接后得到可执行文件a1.exe 若要得到相应的结果需要对程序进行运行 首先对其进行反汇编(首先代码所占的总字节数为cx=42h而除了分贝配栈段和地址段20h后所得到的代码长度应该为21h)查看各个命令所对应的代码段地址,以方便用-g命令对其运行 使用-d命令查看数据段 根据上 ...
分类:
其他好文 时间:
2018-11-24 14:32:27
阅读次数:
206
四、实验结论: 任务一: (1)对源程序 ex5_1.asm 进行汇编、连接、运行; (2)利用debug来对源程序进行调试; step1:用r命令查看当前的各个寄存器的值; step2:根据当前CS的值并且用u命令进行反汇编; step3:根据反汇编得到的结果,用g命令执行到程序返回前,即执行到0 ...
分类:
其他好文 时间:
2018-11-24 14:10:02
阅读次数:
170
一:代码如下 经过编译连接后得到可执行文件a1.exe 若要得到相应的结果需要对程序进行运行 首先对其进行反汇编(首先代码所占的总字节数为cx=42h而除了分贝配栈段和地址段20h后所得到的代码长度应该为21h)查看各个命令所对应的代码段地址,以方便用-g命令对其运行 使用-d命令查看数据段 根据上 ...
分类:
其他好文 时间:
2018-11-23 23:31:19
阅读次数:
198
一、实验目的 1. 理解和掌握将数据、代码、栈放入不同段的程序的编写和调试 2. 理解具有多个段的汇编源程序对应的目标程序执行时,内存分配方式 二、实验准备 1. 结合第 6 章教材和课件,复习第 6 章内容 2. 复习第 3 章「栈」的知识 三、实验内容 实验任务(1) 下载课程公邮中的程序框架放 ...
分类:
其他好文 时间:
2018-11-23 15:14:56
阅读次数:
228