![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编译原理
counsellor
这个作者很懒,什么都没留下…
展开
-
如何写一个json语法解析器
前言最近正在补习编译原理的相关理论基础。于是琢磨着写个简单的语言解析器。0x00. 根基1. python编程(ply库)2. 正则表达式0x01. 了解json的语法规范1. json里的字典key必须是字符串型,value可以是任意类型;2. json根基点必须是字典或者数组;3. json支持的值包括: - 数字(整数或浮点数) - 字符串(在双引号中)原创 2017-02-09 21:03:15 · 1598 阅读 · 0 评论 -
32位与64位下各数据类型字节长度
0x00 实验结果先上结果64bit windows 7 - visual studio x64编译器 64bit windows 7 - visual studio x86编译器64bit Ubuntu - gcc 64bit Ubuntu - gcc 32bit0x01 源码#include <inttypes.h>#i...原创 2018-06-21 17:58:34 · 7962 阅读 · 0 评论 -
Assembly call和ret指令
很多人不知道call和ret的具体动作,只知道call的时候会跳转到被调用函数的地址继续执行指令,ret会直接跳转到返回地址,至于寄存器和栈上的变化不是很了解。0x00 定义CALL pushes the return address onto the stack and transfers control to a procedure.RET pops the return addr...原创 2018-06-14 01:49:55 · 1595 阅读 · 0 评论