- 博客(7)
- 资源 (4)
- 收藏
- 关注
原创 python3.6 源码分析(五):类的创建
友情提示:类的创建过程非常复杂, 请自备小本本字节码分析先来个最简单的类:class A: pass编译一下: 0 LOAD_BUILD_CLASS 2 LOAD_CONST 0 (<code object A at 0x00000226D1158ED0, file "", line 1>)
2017-11-08 19:34:14 1585
原创 python3.6 源码分析(三):创建函数
python定义函数的语句十分简单: 0 LOAD_CONST 0 (<code object fun at 0x000001C7DFA48ED0, file "", line 1>) 2 LOAD_CONST 1 ('fun') 4 MAKE_FUNCTION
2017-10-28 22:30:10 393
原创 python3.6 源码分析(四):函数调用
栗子print("分析源码多快乐")我真的想不到更简单的了。。。 老规矩,编译: 0 LOAD_NAME 0 (print) 2 LOAD_CONST 0 ('分析源码多快乐') 4 CALL_FUNCTION 1
2017-10-26 19:57:06 721
原创 python3.6 源码分析(二):另一个例子
还是从字节码开始分析a = 1b = 2c = a + b编译:0 LOAD_CONST 0 (1)2 STORE_NAME 0 (a)4 LOAD_CONST 1 (2)6 STORE_NAME 1 (b)8 LOAD_NAME 0 (a)10 L
2017-10-26 18:51:56 493
原创 python3.6 源码分析(一)
从字节码入手a = 1编译:LOAD_CONST 0 (1)STORE_NAME 0 (a)根据官方文档的字节码解释: LOAD_CONST从codeobject的co_consts这个列表中读取对应索引的值到栈顶,这里是列表的第0个元素,值为longobject(1) STORE_NAME将栈顶元素绑定到codeobject的co_n
2017-10-26 17:56:45 1214
原创 win7 到 win10 用户层API调用变化
自己的笔记,不一定正确,切勿照搬从win7到win10,很多KERNEL32中的函数都搬家到了KERNELBASE中,比如CreateProcess之类的,而Kernel32中则只留下了一个存根函数CreateProcessWStub,上windbg附加另一个windbg,下断 bp kernel32!createprocesswstub果然断下了,kn回溯看到如下:dbgeng!
2015-12-11 17:49:02 3194
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人