zoukankan      html  css  js  c++  java
  • 2020-2021学期20202401金丁《网络空间安全专业导论》第三周自学总结

    《网络空间安全专业导论》第三周自学总结

    第6章 低级程序设计语言与伪代码

    机器语言是最低等级的编程语言。而伪代码能够表示算法。

    6.1 计算机操作

    计算机是能够存储(store)、检索(retrieve)和处理(process)数据的可编程(programmable)的电子设备。

    6.2 机器语言
    机器语言(machine language):由计算机直接使用的二进制编码指令构成的语言。

    计算机必须参考的命令的真实清单并不存在,源于CPU嵌有相关指令。每条机器语言指令只能执行一个非常低级的任务。目前几乎没有程序是用机器语言编写的。

    每种类型的CPU都有它能理解的自己的机器语言。

    2. 虚拟机Pep/9的重要特性

    虚拟机(virtual computer(machine)):为了模拟真实机器的重要特征而设计的假象机器。

    虚拟机Pep/9的内存单元由65536字节的储存空间构成。Pep/9的字长是2字节或16位。其可以表示的十六进制数的返回约为-7FFF到+7FFF.其拥有七个寄存器,其中包括:

    程序记数器(PC),其中包含下一条即将被执行的指令的地址。 指令寄存器(IR),其中包含正在被执行的指令的下一个副本。 累加器(A),用来储存数据和运算的结果。

    6.4 汇编语言
    汇编语言(assembly language):一种低级语言,用助记码表示特定计算机的机器语言指令。
    汇编器(assembler):把汇编语言程序翻译成机器代码的程序。
    汇编器指令(assembler directive):翻译程序使用的指令。

    有时也被称伪操作(pseudo-operation)。

    注释(comment):为程序读者提供的解释性文字。
    分支(branch):指出执行下一条指令的指令。
    标签(label):对内存位置起的名字,可以将这个名字当作操作数。
    6.5 表达算法
    算法(algorithm):解决方案的计划或概要,或解决问题的逻辑步骤顺序。
    伪代码(pseudocode):一种表达算法的语言。

    布尔表达式(Boolean expression):评价为真或为假的表达式。

    桌面检查(desk checking):在纸上走查整个设计。

    6.6 测试

    代码覆盖测试法(code-coverage testing):通过执行代码中的所有语句测试程序或子程序的测试方法。
    数据覆盖测试法(data-coverage testing):把代码作为一个暗箱,基于所有可能的输入数据测试程序或子程序的测试方法。
    测试结果实现(test-plan implementation):用测试计划中规定的测试用例验证程序是否输出了预期的结果。

    第7章 问题求解与算法设计

    7.1 如何解决未知问题

    1.提出问题。2.寻找熟悉的情况。3.分治法。4.算法。5.计算机问题求解过程

    6.方法总结。7.测试算法。

    7.2 带有循环的算法

    嵌套结构(nested structure):控制结构另一个结构的结构,又称为嵌套逻辑(nested logic)。
    抽象步骤(abstract step):细节仍未明确的算法步骤。
    具体步骤(concrete step):细节完全明确的算法步骤。
    7.3 复杂变量

    应用中的字母叫做字符串。

    数组是同构项目的有名集合,项目在集合中的位置叫做引索。

    7.4 搜索算法

    二分检索(binary search):在有序列表中查找项目的操作,通过比较操作排除大部分检索范围。7.5 排序

    7.5 排序

    7.6 递归算法

    递归(recursion):算法调用它本身的能力。

    每个递归算法至少由两种情况:基本情况和一般情况。基本情况是答案已知的情况;一般情况则是调用自身来解决问题的更小版本的解决方案。因为一般情况下解决的是原始问题越来越小的版本,所以程序最终达到基本情况,即答案是已知的,所以递归停止。

    7.7 几个重要思想

    信息隐蔽(information hiding):隐蔽模块的细节以控制对这些细节的访问的做法。
    抽象(abstraction):复杂系统的一种模型,只包括对观察者来说的必须细节。
    数据抽象(data abstraction):把数据的逻辑视图和它的现实分离开。
    过程抽象(procedural abstraction):把动作的逻辑视图和它的现实分离开。
    控制抽象(control abstraction):把控制结构的逻辑视图和它的现实分离开。
    控制结构(control structure):用于改变正常的顺序控制流的语句。

  • 相关阅读:
    Google Map API Version3 :代码添加和删除marker标记
    ArcGIS Server开发教程系列(8)ArcGIS API for Javascript-控件(小部件)
    ArcGIS Server开发教程系列(8)ArcGIS API for Javascript-控件(小部件)(续)纯代码
    ArcGIS Server开发教程系列(7)使用ArcGIS API for Javascript-Hello World
    ArcGIS Server开发教程系列(3)切片
    3.1、常用图片格式
    【Emmet】HTML速写之Emmet语法规则
    2.11、特征布局实例讲习
    2.10、background属性
    2.9、定位
  • 原文地址:https://www.cnblogs.com/Jinding/p/13899560.html
Copyright © 2011-2022 走看看