csapp 深入理解计算机系统 bomb lab(2)phase_2

bomblab及phase_1

同phase_1可以查看phase_2的汇编代

call   40145c 可以看出phase_2调用了read_six_numbers,然后把1和
(%rsp)比较,如果不是1,就会调用函数。

%rsp 存放地址,(%rsp) 从内存中取出地址的对应的值。

%rsp存放第一个整数的地址

%rsp+4存放第二个整数的地址

%rsp+8存放第三个整数的地址

%rsp+12存放第四个整数的地址

%rsp+16存放第五个整数的地址

%rsp+20存放第六个整数的地址

csapp 深入理解计算机系统 bomb lab(2)phase_2_第1张图片

csapp 深入理解计算机系统 bomb lab(2)phase_2_第2张图片

使用si以单条指令的方式进入断点。

使用finish可以跳出输入。

通过查看汇编代码,第一个数是1,之后每个数乘2。

1 2 4 8 16 32

参考解法

bomblab_03_phase2_哔哩哔哩_bilibili

你可能感兴趣的:(前端,服务器,linux)