• 学号 《信息安全系统设计基础》第5周学习总结(续)


    学号 《信息安全系统设计基础》第X周学习总结

    教材学习内容总结

    本次主要对书上内容进行总结:

    86 寻址方式经历三代:

    1 DOS时代的平坦模式,不区分用户空间和内核空间,很不安全

    2 8086的分段模式

    3 IA32的带保护模式的平坦模式

    ISA定义: ISA即指令集体系结构,在这个体系结构内规定了指令执行的顺序。

    使用 gcc -O1 -S xxx.c可产生汇编文件

    使用 gcc -O1 -c xxx.c可编译汇编代码,此时会产生目标代码文件 xxx.o

    使用objdump -d xxx.o可反汇编

    二进制文件可以用od 命令查看,也可以用gdb的x命令查看。

    “.”开头的行都是指导汇编器和链接器的命令,这些行去掉后就是“过程体”

    X

    操作数大概分为三种类型:立即数 寄存器 存储器

    数据传送指令

    注:IA32的两个操作数都不能只想存储器位置

    其中MOVS和MOVZ都是将晓得数据源复制到打的数据位置,空余用零扩展(MOVZ)或者符号扩展(MOVS)填充。

    算术和逻辑操作分为四组:

    1 加载有效地址(leal)
    2 一元操作(INC DEC NEG NOT)
    3 二元操作(ADD SUB IMUL XOR OR AND)
    4 移位(SAL SHL SAR SHR)

    注:二元操作中第一个是源操作数 第二个是目的操作数。两个位置不能同时指向存储器位置。

    支持过程调用和返回的指令:

    call Label: 过程调用

    call *Operand: 过程调用

    leave: 为返回准备栈

    ret: 从过程调用中返回

    call: 指令的效果是将返回地址入栈,并跳转到被调用过程的起始处。

    课后作业中的问题和解决过程

    练习3.1中有一道260(%eax,%edx)的题,一开始260找不到对应的值,后来知道是十进制,做出来了,后面练习3.6中OXA一样。

    本周代码托管截图

    链接

    http://git.oschina.net/HZW20145322/week-5

    其他(感悟、思考等,可选)

    之前没怎么看书,觉得书上的知识点太多,直接看老师总结的, 后来发现个那样更学不懂,还是得脚踏实地才行。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 100/200 1/1 13/20
    第二周 100/500 1/2 15/38
    第三周 100/1000 1/3 20/60
    第五周 70/1300 2/5 30/90
  • 相关阅读:
    MySQL 行锁 表锁机制
    2017年总结-我的学习之路
    SpringData 基于SpringBoot快速入门
    SolrJ 复杂查询 高亮显示
    Solr7 安装部署 管理界面介绍
    Redis 高可用集群
    10分钟搭建服务器集群——Windows7系统中nginx与IIS服务器搭建集群实现负载均衡
    1分钟解决VS每次运行都显示“正在还原nuget程序包”问题
    C# Lambda表达式和linq表达式 之 匿名对象查询接收
    C#枚举的简单使用
  • 原文地址:https://www.cnblogs.com/HZW20145322/p/5967973.html
Copyright © 2020-2023  润新知