Emoer
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

斯坦福cs231(编译原理)の 11 Automatic Memory Management

引出 自动内存管理也称之为垃圾回收(garbage collection) 手动管理内存有很多出乎意料的bug: 忘记释放没有被使用的内存 忘记去掉一些无用引用,或者是野指针 偶然的内存覆盖 ... 内存相关bug很难发现(比如内存溢出,就需要排查很长时间) 🌰: 某个对象没有被引用了,但是对应的指针还在;突然后面该对象被覆盖了,但是指针仍然引用这块内存,这个时候使用这个指针的读写还是按照原
2023-05-20
编译原理
#编译原理,计算机基础,cool

斯坦福cs231(编译原理)の 9 Optimization

本文是斯坦福cs143编译原理的笔记,内容大部分来自于课件和自己的理解,笔者能力和精力有限,如果有错误欢迎指出 中间代码 什么是中间代码?一般常指介于高级语言(源语言)和低级语言(汇编语言)的一种语言 Provides an intermediate level of abstraction More details than the source Fewer details then th
2023-05-14
编译原理
#编译原理,计算机基础,cool

斯坦福cs231(编译原理)の 6 Cool Operational semantics

本文是斯坦福cs143编译原理的笔记,内容大部分来自于课件和自己的理解,笔者能力和精力有限,如果有错误欢迎指出。 引言 类比: parser阶段,我们要给每种token设置对应的action 语法分析阶段,有一系列的文法式,要在每个文法式规约的时候设置action,规定对应的行为 类型分析阶段:对每一种表达式设置对应的语义动作,进行语义分析 同样的优化阶段:对每一种表达式设置对应的代码生成及优化动
2023-05-14
编译原理
#编译原理,计算机基础,cool

斯坦福cs231(编译原理)の 8 Cool Object Layout

本文是斯坦福cs143编译原理的笔记,内容大部分来自于课件和自己的理解,笔者能力和精力有限,如果有错误欢迎指出 Temporaries 之前介绍的汇编代码比如两个表达式相加: 1234lw $a0 (0)$spli $t0 ?add $a0, $t0, $a0sw $s0 $sp 这里把其中一个加数放在了stack里,然后取出来,再把计算的中间结果放在了stack里,这就是临时变量 最普通的堆栈机
2023-05-14
编译原理
#编译原理,计算机基础,cool

debug

日志工具 开发者使用: trace:打印调用堆栈 debug:不仅打印调用堆栈,还打印变量信息 用户使用: info warn:只是警告,但是不影响运行 error:报错,但是不影响整个应用程序的继续运行 fatal: 中断整个应用程序的执行 首先
2023-05-07
FE
#FE,node,调试,debug

hacktech

内网渗透+爆破:https://blog.csdn.net/m0_46684679/article/details/117854834 安全集锦:https://www.zhihu.com/column/c_1334810805263515648 网络防火墙:https://zhuanlan.zhihu.com/p/159088465 格式: echo -e "\033[字背景颜色;字体颜色m字符
2023-05-06
#渗透,爆破

XXS

XSS (Cross-site scripting),即跨站脚本攻击,应该是前端同学都应该听过的网络安全相关的名词。它是一种尝试注入恶意脚本代码到网站上的攻击形式。它可以使得恶意使用者的代码在受影响用户的浏览器端执行,并对用户的影响。原本简称 css,为了与前端的级联样式表(cascader style sheet)区分,改称 xss。 XSS 类型 XSS 大致可以分为 3 个类型 反射型 (R
2023-05-05
FE
#FE,xxs,跨站脚本攻击

git checkout 妙用

当你在 Git 中处理一个仓库时,你可能需要从另一个分支中获取(checkout)一个指定的文件。 幸运的是,Git 提供了许多可能的方法来快速完成这项任务。其中一个最简单的解决方案是使用git checkout命令,将指定的文件作为一个参数。 在这篇文章中,我们将分析这个问题的不同解决方案,并介绍每一种解决方案所需要遵循的流程。 让我们开始吧。😎 Git Checkout 用例 你正在处理一个
2023-05-05
git/github
#github, git

node从头手写一个简单编译器

介绍 使用语言:node 本文涉及:编译器的词法分析,抽象语义树生成,语法分析,代码生成 本文重点内容: 实现正则表达式分析器 实现简易版 Flex 实现 LR0 语法,并简单介绍其他语法(LL, LR1, SLR, LSPR) 实现简易版 Bison 实现生成汇编代码 实现简易编译器功能,提供编译时期类型检查和推断,支持加减乘除支持函数的递归调用,以及 会包含的: 实现 nfa,以及联合
2023-05-05
编译原理
#编译原理,计算机基础, node

git多账号管理

为什么提交了代码并推送到github,但是github上的contributions并没有增加呢? 其中Github官方给出了一个官方文件,告诉我们什么样的Commit可以被记入Contribution,请点击此处查看。 在官方的帮助文档中,有一条是Commit被记入Contribution中必须满足用于Commit的邮件地址必须与Github账户相关联。其实,这也是为什么我的Commit没有被记
2023-05-05
git/github
#github, git
1…3456

搜索

Hexo Fluid