程序设计语言特点
-
Fortran语言(科学计算,执行效率高)
-
Pascal语言(为教学而开发的,表达能力强)
-
C语言(指针操作能力强,高效)
-
Lisp语言(函数式程序语言,符号处理,人工智能)
-
C++语言(面向对象,高效)
-
Java语言(面向对象,中间代码,跨平台)
-
C#语言(面向对象,中间代码,.Net)
-
Prolog语言(逻辑推理,简洁性,表单能力,数据库和专家系统)
-
Python(脚本)
低级语言:机器语言(计算机硬件只能识别0和1的指令序列),汇编语言
高级语言:功能更强,抽象级别更高,与人们使用的自然语言比较接近
解释和编译:都是将高级语言翻译成计算机硬件认可的机器语言加以执行
最大区别就是:编译生成独立的可执行文件,不可控制源程序,而解释不会生成可执行文件,可控制源程序
翻译源程序时不生成独立的目标程序的是:解释程序 反之,为编译程序
编译程序工作过程分为6个阶段
词法分析 -> 语法分析 -> 语义分析 -> 中间代码生成 -> 代码优化 ->目标代码生成
需要考虑三个问题(一是如何生成较短的目标代码;二是如何充分利用计算机中的寄存器,减少目标代码访问存储单元的次数;三是如何充分利用计算机指令系统的特点,以提高目标代码的质量)
文法定义
终结符:最终结果,不能推导其他元素
非终结符:可以推导其他元素
产生式:非终结符推导出终结符的公式
正则闭包:A+=A1∪A2∪A3∪……∪An 闭包:A*=A0∪A+ 例如a*={a,aa,aaa,……,ε} 而(ab)*={ab,abab,……,ε}
文法类型
1型(上下文有关文法):语义
2型(上下文无关文法):语法
正规式
正规式 | 正规集 |
---|---|
ab | 字符串ab构成集合 |
a|b | 字符串a、b构成的集合 |
a* | 由0个或多个a构成的字符串集合 |
(a|b)* | 所有字符a和b构成的串的集合 |
a(a|b)* | 以a为首字符的a、b字符串的集合 |
(a|b)*abb | 以abb结尾的a、b字符串的集合 |
语法分析方法
自上而下语法分析:从左到右 递归下降思想 预测分析法
自下而上语法分析:从右到左 移进-规约思想 算符优先分析法 LR分析法
有限自动机:起点到终点
编译器和解释器都不可省略词法分析、语法分析、语义分析且顺序不可交换(词语义)
编译器可词法分析、语法分析、语义分析后直接生成目标代码
解释器参与运行控制,执行速度慢
对声明语句主要是将所需要的信息正确地填入合理组织的符号表中
对可执行语句,则是翻译成中间代码或目标代码
词法分析输入源程序,输出记号流:扫描单词
语法分析输入记号流,输出语法树:变量未定义,语句形式,结构是否正确、符号不配对
语义分析检查类型,可以发现静态语义错误,但不能发现动态语义错误,只有运行才可以
目标代码生成慎重考虑的是如何分配及使用寄存器 与机器密切相关
中间代码(后缀式、三地址码、三元式、四元式和树)可以跨平台,提高编译程序可移植性
不同程序的高级语言可以产生同一种中间代码,有利于进行与机器无关的优化处理
有限自动机是词法分析的一个工具,终态2个圆圈
描述程序设计语言:上下文无关文法
优先级括号、大于号、逻辑与、逻辑或
后缀式可以利用栈求值
动态语言是解释型语言
C,C++都是编译型语言
PHP脚本语言
编译过程中为变量分配存储单元所用的地址是逻辑地址,程序运行时再映射为物理地址
C程序全局变量的存储空间在静态数据区分配
脚本语言主要采用解释方式实现
C/C++系统开发语言
Lisp函数式编程语言
Prolog逻辑式编程语言
语法指导翻译是静态语义分析
python中列表list可变的,可重复的 元组triple不可变的 集合set去重
保护期限
单位作品期间未发表,不受保护
注册商标:10年(6个月内续注)
发明专利权:20年
实用新型10和外观15设计专利权:年
单位和委托的区别在于:当合同中未规定著作权的归属时,著作权默认归于单位,而委托创作中,著作权默认归属于创作方个人
法律具有地域性
法律法规、时事新闻、通用公式表格等不受著作权法保护
标准的分类
国际标准:ISO、IEC
国家标准:GB-中国 、ANSI-美国 、BS-英国、JIS-日本
行业标准:IEEE-美国电气电子工程师协会
标准编号
国标:GB
计算机程序包括目标程序与源程序
软件文档包括用户手册,程序设计说明书,流程图
没有合同 著作权就是受委托方
著作权:终生+死后50年
同一天申请 则谁先使用谁就能获准注册
烟草必须注册商标
李某购买东西,就具有东西的所有权和展览权
信息安全
包过滤防火墙属于网络层与数据链路层之间 包括目的地址 源地址 协议 端口 成本低 安全性低 对用户透明的
应用代理网关防火墙优点:检查应用层、传输层和网络层协议特征 隔离内网和外网
防火墙:内(安全)、DMZ、 外(不安全)
DMZ存储公用服务器(Email,FTP)
防火墙工作层次越高,工作效率越低,安全性越高
防火墙功能特性:控制、审计、报警和反应
不属于防火墙功能:查毒,扫漏洞
计算机病毒
宏病毒(Macro)感染的对象主要是文本文档、电子表格等
木马软件:冰河(攻击建立网络连接)、X卧底 服务器与客户端建立连接 木马程序客户端运行在攻击者的服务器上
蠕虫病毒:欢乐时光、熊猫烧香、红色代码、爱虫病毒、震网
CIH中文:系统病毒
计算机病毒特点:传播性、触发性、感染性、隐蔽性、潜伏性、破坏性
网络攻击
重放攻击:网络监听、身份认证 报文可通过加入时间戳*防止重放攻击
拒绝服务攻击:不断向计算机发起请求,不能继续服务
ARP攻击(欺骗攻击一种)造成无法跨网段通信的原因:伪造网关ARP报文使得数据包无法发送到网关 MAC地址被改为发起ARP攻击的主机地址
入侵检测技术:专家系统、模型检测、简单匹配
SQL注入攻击首要目标:获得权限
网络安全
SSL:传输层安全协议,端口号443
TLS:传输层安全协议
SSH:安全连接协议,安全保密,安全远程登录
HTTPS=HTTP(80)+SSL
MIME:电子邮件附件类型相关,不安全
PGP:电子邮件加密安全相关 公钥,数字签名使收信人确认邮件发送方
防范网络监听有效方法:数据加密
0到1023公共端口号
对称密钥:一把非公开的
非对称密钥:公开的
IPSec为IP数据报文进行加密
PP2P为数据链路加密
RFB:远程登录图形化用户界面
IGMP:因特网组管理协议
TCP:传输控制协议
SMTP:25
P0P3:110
外部网关协议:BGP
不可靠,无连接协议:UDP
ipconfig:本机IP地址
traceroute:路由跟踪
nslookup:域名查询