zoukankan      html  css  js  c++  java
  • 2017-2018-1 20155338 《信息安全系统设计基础》第七周学习总结

    2017-2018-1 20155338 《信息安全系统设计基础》第七周学习总结

    教材学习内容总结

    Y86-64指令集体系结构

    程序员可见状态

    概念:Y86程序中的每条指令会读取或修改处理器状态的某些部分,这些称之为处理器的可见状态。

    Y86处理器状态可以访问和修改程序寄存器、条件码、程序计数器和存储器,状态码指明程序是不是运行正常。

    名词代表及意义:

    DMEM:存储器 很大的字节数组,保存着程序和数据。Y86程序用虚拟地址来引用存储器位置。

    RF:程序寄存器 %eax,%ecx,%edx,%ebx,%esi,%edi,%esp(出栈、入栈、调用和返回指令作为栈指针),%ebp

    Stat:程序状态码 它表明程序执行的总体状态。它会指示是正常运行还是出现了某种异常。

    PC:程序计数器 存放当前正在执行的指令

    CC:条件码
    ZF、SF、OF(都是一位条件码,用来保存最近的算术或逻辑指令所造成影响的有关信息。)

    Y86指令

    (1)、指令编码长度从1个字节到6个字节不等,一条指令含有一个单字节的指令指示符,或者含有一个单字节的指示符。字段fn指明是某个整数操作、数据移动条件、或是分支条件。

    指令集锦:

    4个整数操作指令。addl、subl、andl和xorl。

    7个跳转指令(jXX)。jne、jl、jle、je、jmp、jge和jg。

    有6个条件传送指令(cmovXX)。cmovle、cmovl、cmove、cmovne、cmovge和cmovg。只有当条件码满足所需要的约束时,才会更新目的寄存器的值。

    call指令将返回地址入栈,然后跳到目的地址。

    ret指令从这样的过程调用中返回。

    pushl和popl指令实现了入栈和出栈的功能。

    halt指令停止指令的执行。对于Y86来说,执行halt指令会导致处理器停止,并将状态码设置为HLT。

    逻辑设计和硬件控制语言HCL

    逻辑门

    逻辑门是数字电路的基本计算元素,输出为输入位值的某个布尔函数。

    HCL表达式:

    AND: &&
    OR: ||
    NOT: !
    

    逻辑门只对单个位的数进行操作,而不是整个字。

    常见的n路操作表示,例:AND门,输入为a,b,c,HCL表示为a&&b&&c

    组合电路和HCL布尔表达式

    组合电路是将很多的门组合成网构建计算块的电路

    构建的两条限制:

    网必须是无环的,也就是不能形成一个回路

    两个或多个逻辑门的输出不能连接在一起,否则会使线上的信号矛盾

    Y86的顺序实现

    SEQ的时序

    SEQ的实现包括组合逻辑和两种存储器设备:

    1、时钟寄存器

    2、程序计数器和条件码寄存器

    组合逻辑不需要时序或控制。

    四个硬件单元需要时序进行明确控制:

    程序计数器、条件码寄存器、数据存储器和寄存器文件
    

    通过一个时钟信号来控制,它触发将新值装载到寄存器以及将值写到随机访问存储器。只需要寄存器和存储器的时钟控制。

    代码调试中的问题和解决过程

    • 问题1:

      输入
      ./psim -t -g ../y86-code/asum.yo之后显示找不到/asum.yo命令

    • 问题1解决方案:

      回到y86-code文件夹,显示的是asumi.yo文件,可能每个人的不一样,把之前的命令改成/asumi.yo就可以打开模拟器了。

    安装tcl/tk

    下载并解压sim文件夹

    输入make clean命令,并make,然后用cat命令查看

    打开模拟器

    代码托管

    结对及互评

    本周结对学习情况

    20155307

    结对学习内容
    - 教材第四章

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 2000行 15篇 200小时
    第一周 150/150 1/1 17/17
    第二周 70/220 1/2 12/29
    第三周 100/320 1/3 10/39
    第四周 100/420 1/4 10/59
    第五周 80/500 2/6 22/81
    第六周 300/800 2/8 30/111
    第七周 200/1000 1/9 25/136
    • 计划学习时间:20小时

    • 实际学习时间:25小时

  • 相关阅读:
    [友谊篇FRIENDSHIP]Learn with whole Life 一生的学习
    IIS还原备份xml配置文件
    从A到Z的人生名言
    爱情六十九课,节制抱怨
    C# list 去重复
    win7 iis7.5 下配置MVC3问题
    Kill oracle session
    Windows7删除文件提示"您需要权限来执行此操作"没有权限无法删除文件的解决方法
    json对象
    js的属性和方法的类型
  • 原文地址:https://www.cnblogs.com/Hdywan/p/7788278.html
Copyright © 2011-2022 走看看