2018-2019-1 20165325 《信息安全系统设计基础》第四周学习总结

本文总结了2018-2019年《信息安全系统设计基础》课程第四周的学习内容,详细介绍了程序员可见状态的概念,包括程序寄存器、条件码、程序状态和程序计数器等。同时,文章分析了Y86-64指令集的特点,如指令编码、功能码及寄存器操作,并通过具体例题解析指令编码过程,还探讨了SEQ+流水线优化策略及与非门的逻辑实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2018-2019-1 20165325 《信息安全系统设计基础》第四周学习总结

一、学习笔记
1、程序员可见状态
  • 程序员:用汇编代码写程序的人;产生机器代码的编译器。
  • 可见状态:15个程序寄存器;3个条件码;程序状态;程序计数器;内存。

程序寄存器(RF):

%rax,%rsp,%r8,%r12,%rcx,%rbp,%r9,%r13,%rdr,%rsi,%r10,%r14,%rbr,%rdi,%r11;

条件码:ZF\SF\OF;

  • 结果为0,ZF = 1;
  • 结果最高位即SF;
  • 无符号运算无意义,发生溢出,OF = 1;

程序状态(Stat):

  • AOK:正常操作;
  • HLT:执行halt指令;
  • ADR:非法地址;
  • INS:非法指令;

程序计数器(PC):

正在执行的指令的地址;

2、程序寄存器标识符

1296594-20181021215917522-1800758696.png

3、指令编码

1296594-20181021215926896-1607562223.png

4、指令集功能码

1296594-20181021215934872-1243751990.png

二、班课作业

本次班课作业只有课下测试,以下是我的错题总结:

  • SEQ+对SEQ的改变有()

A . PC的计算挪到取指阶段

B . PC的计算挪到访存阶段

C . 电路重定时

D . 插入流水线寄存器

E . 对信号进行重排和标号

F . 处理流水线冒险

正确答案: A C D E F

SEQ+中对状态元素的改变称为电路重定时,在SEQ+的各个阶段之间插入了流水线寄存器,并对信号重新排列。

  • Y86-64中()指令没有访存操作.

A . rrmovl

B . irmovq

C . rmmovq

D . pushq

E . jXX

F . ret

正确答案: A B

rrmovl是寄存器-寄存器传送,irmovq是立即数-寄存器传送,不需要访存。

  • 下面说法正确的是()

A . ALU是一种时序电路。

B . ALU是一种组合电路。

C . 寄存器是一种时序电路

D . 寄存器是一种组合电路

正确答案: B C

区分在有没有时钟。

三、问题日志
1、指令“irmovq $15 %rbx”对应的编码为[30F30F00000000000000]

上课的一道例题,PPT上面的,一开始没怎么懂。

首先查表得%rbx为3,irmovq V,rB指令为30F开头;

因此前面是30F3;

15的16进制是“F”,然后写成小端以后反过来了。

同样的例子,指令“rmmovq %rcx,-3(%rbr)”对应的编码为[4013FDFFFFFFFFFFFFFF]

2、与非门

上课的时候,老师让我们用与非门写出或:

拓展:与非门其实也能实现与:

1296594-20181021215944393-1392810206.png

因此,与非能表示其他符号。

1296594-20181021215952174-786310095.png

转载于:https://www.cnblogs.com/maxeysblog/p/9827200.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值