2017-2018-1 20155229 《信息安全系统设计基础》课下作业
课上测试完成了第一个,所以现在补充第二个和第三个
课上测试2
-
把第一个练习中的代码在X86-64(Ubuntu)中反汇编,给出汇编代码和机器码的截图
-
把X86-64汇编翻译成Y86-64汇编,并给出相应机器码的截图(使用附件中的Y86-64模拟器)
汇编代码为:
通过objdump -d command.o
反汇编
机器代码为:
学习安装的了Y86-64模拟器,但是一直无法打开
参考20155232李书琪的博客 发现https://boginw.github.io/js-y86-64/
这个网址能够将x86-64 转为y86-64,但是转换出的一直有问题,还需下来再看看
课上测试3
- 基于socket 使用教材的csapp.h csapp.c,实现daytime(13)服务器(端口我们使用13+后三位学号)和客户端
服务器响应消息格式是
“
客户端IP:XXXX
服务器实现者学号:XXXXXXXX
当前时间: XX:XX:XX
”
课下作业1 4.47
#include<stdio.h>
void bubble_a(int *data, int count){
int i,next;
for(next = 1; next < count; next++){
for(i = next - 1; i >= 0; i--)
if(*(data + i + 1) < *(data + i)){
int t = *(data + i + 1);
*(data + i + 1) = *(data + i);
*(data + i) = t;
}
}
}
代码运行结果的截图
x-64:
y-86:
目前尚未弄出
课下作业4.48
4.47代码实现冒泡排序,要求不使用跳转,且最多使用3次跳转
x-86:
y-86:
目前尚未弄出
课下作业4.49
4.47代码实现冒泡排序,要求不使用跳转,且只使用1次条件传送
x-86:
y-86:
目前尚未弄出
课下作业2
把课上练习3的daytime服务器分别用多进程和多线程实现成并发服务器并测试
** 因为运行时csapp一直出现问题,所以运行成功后进行截图已经过了时间
多进程:
多线程:
** 在截图过程中,电脑没电了,当时只截了两张客户端的图,如下
现在重新进行连接,运行,和截图