![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
专业课
DwD-
这个作者很懒,什么都没留下…
展开
-
【密码学】基于英文字母自然统计规律破解凯撒算法加密
1. 前言凯撒密码是一种古老的加密算法,至今也被应用在某些加密算法的过程中。一般而言,破解凯撒密码需要密钥,但是由于加密空间太小,解密可以穷举进行。因此本文给出了一种基于统计的解密算法,这种算法思想也可以应用到其他场合。2. 算法2.1 凯撒加密算法凯撒加密算法是采取字母移位的思路进行,加密公式如下:word = (word + x) mod 26根据鸽巢原理可知,穷举26次必然能得到加密原文。2.2 基于统计分析解密算法算法求解前提假设:加密原文符合英文字母自然统计规律.原创 2020-05-19 23:47:34 · 2518 阅读 · 0 评论 -
【编译原理】词法分析(自定义标识符、常数、关键字、界符识别)代码实现
1.前言本篇博客实现一个编译原理的词法分析器,能够识别用户自定义标识符、常数、字符串、关键字、界符。词法分析包括:用户自定义标识符、常数、字符串、关键字、界符的识别。用户自定义符号,顾名思义就是自己定义的变量名;函数名,常数包括整数、浮点数、科学计数;字符串包括‘ ’、" "两种形式的字符串;关键字就是程序内置的关键字,如int、main等;界符就是各类符号,如运算符、{}、[]等。词...原创 2019-12-23 20:17:14 · 17313 阅读 · 0 评论 -
【编译原理】LL(1)语法分析 算法流程&实例详解&代码实现
1.前言LL(1)文法是为了语法分析的中自上而下推导而专门打造的一个规范化的文法。给定一个文法,首先要判定是不是LL(1)文法,如果不是,需要转化成LL(1)文法;然后构建LL(1)分析表;最后,构造相应的求解器。2.算法2.1 LL(1)文法判定对于每个产生式(A->α),定义first(α)为first(α)={t|α=>t...,t∈VT},follow(A)...原创 2019-12-14 11:19:20 · 14516 阅读 · 0 评论 -
汇编语言MOV指令详解以及错误写法修正
汇编语言中,MOV是最基本的一种操作。格式:MOV dest,src操作:将src的内容移至dest,移动后src的内容仍在,dest的内容被src覆盖。其规则如下:1.CS、IP的值不可以作为目标操作数;2.dest、src不可以同时作为存储器操作数出现;3.段寄存器不能相互转送;4.不能把立即数送人段寄存器。常见错误写法:1.DATA DB 10HMOV [SI],DA...原创 2019-06-16 14:41:50 · 27849 阅读 · 2 评论 -
【编译原理】DFA自动机设计 算法&例题&代码实现
1.前言设计DFA是编译原理中非常重要的一环,在词法分析中占有很重要的地位。一般而言,我们会先求正则表达式,然后根据正则表达式来求DFA。所以,在设计DFA之前,首先要确保你的正规文法正确。简单的正规表达式可以直接求出DFA,但是稍微复杂的就困难了。一般而言DFA的设计需要经过三步,第一步,设计符合要求的ε-NFA;第二步,转化成DFA;第三步(如果没要求可省略),DFA的化简。2.算...原创 2020-02-28 13:10:05 · 6184 阅读 · 0 评论 -
【数字系统】基于VHDL语言设计电子时钟(Quartus II开发)
一、实验设计设计一个电子时钟,要求能够完成时间的显示、复位、设置时间、整点报时的功能。采用VHDL语言写程序,使用Quartus II进行编程,最后在睿智四代AX4010板子上进行实验验证。二、模块设计按键消抖模块、时钟分频模块、置数模块、秒分时计数模块、蜂鸣器模块、数码管输出模块。实现的功能:按键消抖、用户置数、时分秒计时显示、整点报时(n点钟n次)。三、模块代码时钟...原创 2019-11-05 18:33:18 · 20363 阅读 · 56 评论