![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
csapp lab
文章平均质量分 67
Dejavu1z
做题,总结,不断的学习
展开
-
实验 2 :Bomb Lab
炸弹 1 首先查看炸弹 111 的代码部分,发现是由 phase_1 函数来运行炸弹 对 phase_1 函数使用 gdb 反汇编: disassemble phase_1 得到 phase_1 函数的汇编代码 发现该函数通过调用 strings_not_equal 函数后进行判断,接着进行反汇编: disassemble strings_not_equal 查看代码后,发现这个函数是判断两个字符串是否相同,在这个函数的位置打上断点,并运行程序,任意输入字符串: break strings_not_原创 2022-05-04 11:38:40 · 327 阅读 · 0 评论 -
实验 1 :Data Lab
bitXor(x, y) 使用~和&实现异或操作,返回x⊕yx \oplus yx⊕y int bitXor(int x, int y) { return ~(~x & ~y) & ~(x & y); } 根据异或的运算规则,我们只需要将不同时为0的位和不同时为1做与操作即可。 tmin() 返回最小的整数补码 ...原创 2022-04-30 08:02:14 · 1170 阅读 · 0 评论