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一直出现问题,所以运行成功后进行截图已经过了时间
多进程:

多线程:
** 在截图过程中,电脑没电了,当时只截了两张客户端的图,如下

现在重新进行连接,运行,和截图

原文地址:https://www.cnblogs.com/fyhtvxq/p/7823545.html