软件工程复习

软件工程

  • 软件的概念

    软件是计算机系统的重要组成部分

    软件是逻辑产品,需要计算机硬件和系统软件的支撑

    软件是计算机控制系统的指挥中枢

    软件是信息转换器,它能对信息进行加工、处理或变换

    软件是工具,在人们的生活、工作、休闲,在社会的经济、军事、政治、文化、科学技术、教育中发挥巨大作用

  • 软件的特点

    软件是能够完成预定功能和性能,并对相应数据进行加工的程序和描述程序及其操作的文档。

    软件=程序+数据+文档

    程序=算法+数据结构

    文档:自然语言,结构化英语,图表

    数据:用程序设计语言要求的数据结构表示

Read more

计算理论复习

Q1

Find the error in the following proof that all horses are the same color. Claim: In any set of h horses, all horses are the same color.
Proof: By induction on h.
Basis: For h = 1. In any set containing just one horse, all horses clearly are the same color.
Induction step: For k ≥ 1, assume that the claim is true for h = k and provethatitistrueforh=k+1. TakeanysetH ofk+1horses. We show that all the horses in this set are the same color. Remove one horse from this set to obtain the set H1 with just k horses. By the induction hypothesis, all the horses in H1 are the same color. Now replace the removed horse and remove a different one to obtain the set H2. By the same argument, all the horses in H2 are the same color. Therefore, all the horses in H must be the same color, and the proof is complete.

Answer

编译原理复习

编译器的概念模型

字位码、机器语言、汇编语言属于低级语言,而面向用户、面向问题的语言则是高级语言。

低级语言与特定的机器有关,功效高,但是使用复杂、繁琐、易出错。

高级语言不依赖具体机器,移植性好、对用户要求低、易使用、易维护。

用高级语言写的程序,计算机不能立即执行,必须通过一个“翻译程序”加工,转化为与其等价的机器语言程序。这个翻译程序此时就是“编译程序”。

源程序:用汇编语言或高级语言编写的程序。

翻译程序:将源程序转化为目标程序的程序。

目标程序:用目标语言所表示的程序。

Read more

CFG

非上下文无关语言

若A是CFL,则存在数p(pumping length),使得A中任何一个长度不小于p的字符串s都能被划分为5段 $s=uvxyz$ 且满足下述条件:

  • 对于每一个 $i\geq 0$,$u v^i x y^i z \in A$
  • $|vy| > 0$ (保证v或y不是空串,否则定理自动成立,和正则语言的泵引理一样了)
  • $|vxy| \leq p$

能使用正则语言写出来或者DFA判别的就是正则语言
能使用上下文无关语言写出来或者PDA判别的就是上下文无关语言
剩下的都是其他语言
正则语言和上下文无关语言可以使用泵引理判假,即所有正则语言、上下文无关均符合他们的泵引理,但是不是所有符合泵引理的都是CFG或者CFL

正则语言包含上下文无关语言

Read more

NLP复习

HMM

  • 用 $q_t$ 表示 t 时刻的状态

  • 状态集合:$S = {S_1, …, S_N}$

  • 输出符号集合:$O = {O_1, …, O_M}$
  • 状态转移矩阵:$A = a_{ij} = P(q_{t+1} = S_j | q_t = S_i)$,对 j 从 1 到 N 求和,结果为 1,因为从 i 出发总会到达 1~N 中的一个状态的
  • 可观察符号的概率分布矩阵:$B = b_j(k)$,表示在状态 j 时输出符号 $v_k$ 的概率。$b_j(k) = P(O_t = v_k | q_t = S_j)$,对 k 从 1~M求和的结果为 1,因为一个状态总有一个输出符号。
  • 初始状态概率:$\pi_i = P(q_1 = S_i)$
Read more

网络空间安全复习题(天津大学)

网络安全基础复习提纲 (T · J · U)

一共 22 道简答题。

1. 什么是网络嗅探?为什么能实现网络嗅探?

网络嗅探是指利用计算机的网络接口截获其它计算机的数据报文的一种手段。

因为大部分硬件网络访问控制器使用目标地址来区分网络上的哪个数据包是可读取的,即使用目标地址过滤不是给自己的数据包。但是网络嗅探器会将网络适配卡置为杂乱模式,使得网卡能够接收传输在网络上的每一个数据包。

2. 以太网最常见的基于流量的攻击是什么?为什么?采用什么设备和方法可以避免这种攻击?

以太网最常见的基于流量的攻击是流量嗅探。

因为大多数以太网硬件控制器可以设置为混杂模式,使得它们能够读取与硬件地址无关的所有流量,因此发起这种攻击很容易。

减灾方法:

  • 采用交换式网络环境,即同一个端口上只有一台设备(一般来说,每个端口一台设备)可以减少嗅探。
Read more
You need to set client_id and slot_id to show this AD unit. Please set it in _config.yml.