2017-2018-1 20155330 《信息安全系统设计基础》第3周学习总结
2017-2018-1 20155330 《信息安全系统设计基础》第3周学习总结
教材学习内容总结
- 字节顺序
- 小端法:最低有效字节在最前面
- 大端法:最高有效字节在最前面
- 布尔运算:&(与)、|(或)、^(异或)、~(非)
- 确定位级表达式的结果:将十六进制的参数扩展成二进制表示并执行二进制运算,然后转换回十六进制。
教材学习中的问题和解决过程
- 问题1:伪指令
gcc -m32 XXX.c
编译的程序可以在32位或64位机器上正确运行,gcc -m64 XXX.c
编译的程序只能在64位机器上运行,不应该是相反的吗? - 问题1解决方案:这是由于命令
gcc -m32 XXX.c
所生成的程序为32位程序,而gcc -m64 XXX.c
生成的程序为64位程序,命令所生成的程序取决于程序的字节数,即程序是如何编译的,而不是运行的机器类型,所以根据机器的向后兼容性,64位机器可以运行32位程序和64位程序,而32位机器只能运行32位程序。 - 问题2:对书上补码乘法的计算不是很清楚。
- 问题2解决方案:首先需要知道二进制乘法的有关原理,又有
(X*Y)补=(X)补*(Y)补
,所以可以先将相乘的两个二进制数相乘后取补即得结果。不过这种方法实际上计算时多少会有一点麻烦,但是很遗憾的是在参考了补码乘法,补码乘法计算详细解说一文之后我依然没能弄明白其中的诀窍,希望老师上课时能讲一讲如何直接对补码进行乘法运算,而不是通过转换的形式来得到结果。
家庭作业
选做的是2.58。
题目:编写过程is_little_endian,挡在小端法机器上编译和运行时返回1,在大端法机器上编译运行时则返回0。
过程代码:
int is_little_endian(){int m = 1;return *((char *)&m);//地址强制为char *型地址,并检测地址数据是否为最低字节,是则返回1,即为小端法机器
}
虚拟机运行结果
可以知道该虚拟机为小端法机器。
代码调试中的问题和解决过程
- 问题1:编译时出错。
- 问题1解决方案:应该是有哪里输入错误,将内容重新输入编译后能够运行。
代码托管
上周考试错题总结
暂无。
结对及互评
本周结对学习情况
- 20155321
- 结对学习内容
- 第2章 信息的表示和处理
其他(感悟、思考等,可选)
由于国庆放假没有在学校,所以基本上是把两周的的任务压缩到了一周。第二章的内容非常的多,而且部分内容靠自学比较难以理解,花费了许多时间在查找资料上,学习的结果并不是十分理想。不管怎么说假期的时间确实是没怎么学习,所以落下了很多东西,以至于课堂实践也没能按时完成,从这个星期开始好好学习吧。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/0 | 1/1 | 10/10 | |
第二周 | 63/63 | 1/2 | 8/18 | |
第三周 | 31/94 | 1/3 | 18/36 |
PS:因为是两周的内容一起进行学习所以对两周的相关代码进行了加减得到的上表。
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
参考:软件工程软件的估计为什么这么难,软件工程 估计方法
计划学习时间:15小时
实际学习时间:18小时
参考资料
- 《深入理解计算机系统V3》学习指导
- 补码乘法,补码乘法计算详细解说
转载于:https://www.cnblogs.com/ashin-kl/p/7674655.html
2017-2018-1 20155330 《信息安全系统设计基础》第3周学习总结相关推荐
- # 2017-2018-1 20155224 《信息安全系统设计基础》第九周学习总结
2017-2018-1 20155224 <信息安全系统设计基础>第九周学习总结 教材学习内容总结 存储器 随机访问存储器(RAM): 静态RAM:用来作为高速缓存存储器,每个位存储在一个 ...
- 2018-2019-1 20165206 《信息安全系统设计基础》第九周学习总结
- 2018-2019-1 20165206 <信息安全系统设计基础>第九周学习总结 - 教材学习内容总结 计算机系统的主存被组织成一个由M个连续的字节大小的单元组成的数组.每个字节都有一 ...
- 20135203齐岳 信息安全系统设计基础第十三周学习总结
20135203齐岳 信息安全系统设计基础第十三周学习总结 学习计时:8/9共小时(计划/实际) 读书:4/5 代码:1/1 作业:1/1 博客:2/2 第十二章 并发编程 一.学习目标 掌握三种并发 ...
- # 20155337 2017-2018-1 《信息安全系统设计基础》第一周学习总结
20155337 2017-2018-1 <信息安全系统设计基础>第一周学习总结 教材学习内容总结 1.1信息就是位+上下文 hello.c程序是以字节序列的方式储存在文件中的.每个字节都 ...
- 20135219洪韶武——信息安全系统设计基础第五周学习总结
信息安全系统设计基础第五周学习总结 学习任务:教材第四章[处理器体系结构] 学习时间:10小时 一.教材知识点梳理[4.1-4.3] 1.ISA[指令集体系结构] 一个处理器支持的指令和指令的字节级 ...
- 20145227《信息安全系统设计基础》第一周学习总结
20145227<信息安全系统设计基础>第一周学习总结 学习内容总结 Linux是一个操作系统.如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命 ...
- 2018-2019 20165203 《信息安全系统设计基础》第一周学习总结
2018-2019-1 20165203 <信息安全系统设计基础>第一周学习总结 教材学习内容总结 编译:gcc [选项] [文件名] 选项参数表 参数 对应功能 -E 仅执行编译预处理 ...
- 2018-2019-1 20165221 《信息安全系统设计基础》第一周学习总结
2018-2019-1 20165221 <信息安全系统设计基础>第一周学习总结 教材学习总结 有关vim 打开方式:vim [文件名] 按i会进入insert模式,可以对代码进行编辑 按 ...
- 2017-2018-1 20155209 《信息安全系统设计基础》第一周学习总结
2017-2018-1 20155209 <信息安全系统设计基础>第一周学习总结 教材学习内容总结 计算机系统就是由可以看到的硬件和系统内的软件组成的,然后用来运行应用程序. 我们平时使用 ...
- 20145307《信息安全系统设计基础》第二周学习总结
20145307<信息安全系统设计基础>第二周学习总结 教材学习内容总结 vim编辑器 Vim的6种基本模式:Vim具有6种基本模式和5种派生模式普通模式(Normal mode) Vim ...
最新文章
- Linux Sed命令具体解释+怎样替换换行符quot;\nquot;(非常多面试问道)
- DOM包裹wrap()方法
- 哈希存储 java_Java容器系列之HashMap的存储
- CentOS6.5卸载默认安装的mysql5.1,并安装mysql5.5(亲测有效)
- vb 字符串转为数字 和判断字符串是否是数字字符串【转】
- Tensorflow训练和预测中的BN层的坑(转载)
- pip install ipython出错_Python -- 关于pip安装Ipython
- DPM2010 粒度恢复个人用户邮箱
- 暴力解决配置HTTPS后无法使用Hermit
- Linux调用Windows指纹识别,生物识别--指纹识别用于web登录
- php程序员 自我评价,程序员自我评价简历范文
- 蓝桥杯 ADV-222 7-2求arccos值 java
- memcached入门
- 关于当前安全设置不允许下载文件问题的解决
- 关于显示屏分辨率的问题
- puppet一键部署lnmt
- “逃离”北京来到二线城市,谈谈面试和职业规划
- 计算机社团活动展望未来,社团展望未来演讲稿(2)
- kali wifi不可用_Kali Linux系统解决无线网卡无法连接WIFI模块教程:
- 网络工程师模拟测试题
热门文章
- 如何在 Mac 上的“终端”中执行命令和运行工具?
- Nova for mac(强大的代码编辑工具)
- 利用 Finder 清理Mac旧档案,释放空间
- npm ERR! Error: EPERM: operation not permitted问题解决
- 跟小静学MVC3[03]--相关语法特性小补习
- const 使用方法具体解释
- 我如何学习:不要停下学习的脚步
- 结构-行为-样式-有趣的函数
- Linux多网卡配置高级策略路由---从哪里来就回哪里去~!
- 前端开发工程师如何在2013年里提升自己