汇编语言
文章平均质量分 95
astrotycoon
这个作者很懒,什么都没留下…
展开
-
理解memory barrier
参考链接:《Memory Reordering Caught in the Act》《Memory Ordering at Compile Time》《从一次NULL指针kernel panic说说内存屏障》《编译乱序(Compiler Reordering)》原创 2020-05-31 22:31:15 · 235 阅读 · 0 评论 -
Intel CPU 指令码格式
参考链接:《X86 Opcode and Instruction Reference》《the opcode map for the 8086 processor》《Intel x86 Assembler Instruction Set Opcode Table》《x86 opcode structure and instruction overview》《A Begin...原创 2019-11-22 22:26:01 · 1371 阅读 · 0 评论 -
x86寄存器的一般功能
1、EAX, EBX, ECX, EDX都可以作为32位寄存器、16位寄存器或者8位寄存器使用。EAX可作为累加器用于乘法、除法及一些调整指令,对于这些指令,累加器常表现为隐含形 式。EAX寄存器也可以保存被访问存储器单元的偏移地址。EBX常用于地址指针,保存被访问存储器单元的偏移地址。ECX经常用作计数器,用于保存指令的 计数值。ECX寄存器也可以保存访问数据所在存储器单元的偏移地址。用于计数的原创 2012-11-10 16:28:12 · 1411 阅读 · 0 评论 -
小谈链接选项-Bsymbolic
未完待续!参考链接:《记一个链接库导出函数被覆盖的问题》原创 2017-06-13 16:27:47 · 4224 阅读 · 0 评论 -
Position Independent Code (PIC) in shared libraries
很好的文章,阐述x86上得位置无关代码的实现,翻译的不好,还望批评指正。免费PDF文档下载地址:http://ishare.iask.sina.com.cn/f/35290470.html或者http://wenku.baidu.com/view/506fe43a31126edb6f1a106a.html?st=1I’ve described the need for special原创 2012-12-31 23:15:27 · 4178 阅读 · 0 评论 -
CS:APP二进制炸弹phase1
CS:APP二进制炸弹phase1原创 2017-06-14 16:32:00 · 2671 阅读 · 0 评论 -
CS:APP二进制炸弹phase3
CS:APP二进制炸弹phase3原创 2017-06-14 16:35:36 · 4538 阅读 · 0 评论 -
EFLAGS寄存器中状态标志(Status Flags)小结
对EFLAGS寄存器中状态标志的总结。原创 2017-07-28 11:40:49 · 12243 阅读 · 1 评论 -
main函数之前发生了什么
参考链接:《Linux x86 Program Start Up》《The thorny path of Hello World》《Before Main()》(需梯子)《Life Cycle of a Linux Program | Glenn's Web Site》《main 之前与之后》《《程序员的自我修养》第十一章读书笔记》《How main() is exec...原创 2017-03-09 11:27:04 · 839 阅读 · 0 评论 -
How statically linked programs run on Linux
How statically linked programs run on Linux 静态链接的程序是如何在linux系统上运行的 In this article I want to explore what happens when a statically linked program gets executed on ...翻译 2017-11-24 09:31:20 · 716 阅读 · 0 评论 -
Life Cycle of a Linux Program
Life Cycle of a Linux Program 一个程序的生与死(linux平台)This is an investigation of the life cycle of a program in a Linux system.本篇文章我将讨论的是一个程序在...翻译 2017-11-30 10:54:20 · 691 阅读 · 0 评论 -
ELF符号可见性(Visibility)
参考链接:《Proper C++ Visibility Support》《Controlling Symbol Visibility》《Why symbol visibility is good》《Introduction to symbol visibility》《Control over symbol exports in GCC》《Sorry state of dyn...原创 2018-05-18 19:46:53 · 1025 阅读 · 0 评论 -
Load-time relocation of shared libraries
一篇关于装载时重定位技术的文章,翻译的不好,还望批评指正!免费PDF文档下载地址:http://ishare.iask.sina.com.cn/f/35236483.html 或者: http://wenku.baidu.com/view/d67a3108a6c30c2259019e6a.html翻译 2012-12-26 16:03:20 · 2425 阅读 · 0 评论 -
X86和X86-64的函数栈帧结构以及调用约定
写在前头对于函数栈帧(stack frame)的概念我是早就知道的,对x86的栈帧结构也算的上熟悉,之所以写这篇文章是因为我发现X64平台函数参数传递与X86有很大不同,X64增加了很多寄存器的使用。索性总结一下,供自己以后查阅学习!如有错误的地方,还请读者指出!写这篇文章主要参考了Eli Bendersky的两篇文章,个人非常喜欢他的文章,总能用探索式的博文将技术细节呈现在我的眼前!...原创 2017-01-19 18:57:21 · 2779 阅读 · 0 评论 -
Position Independent Code (PIC) in shared libraries on x64
免费PDF文档下载地址:http://ishare.iask.sina.com.cn/f/35309731.html或者:http://wenku.baidu.com/view/5668e23a31126edb6f1a106d.html The previous article explained how position independent code (PIC) w翻译 2013-01-02 15:13:24 · 2172 阅读 · 0 评论 -
CMOS RAM 各字节的含义
偏移值(Offset)数据字段的意义描述(Description)00h01h02h03h04h05h06h07h08h09h目前系统时间的“秒数”字段预约警铃时间的“秒数”字段目前系统时间的“分钟”字段预约警铃时间的“分钟”字段目前系统时间的“小时”字段预约警铃时间的“小时”字段星期几(星期一=01,星期二=02转载 2013-04-11 12:22:15 · 3091 阅读 · 0 评论 -
BIOS和DOS建立的中断向量表
本网页内容,对于普通DIY来说是没有意义的;但对于某些“高手”可是很重要的。本页只是让大家了解一下BIOS和DOS之间建立中断向量的联系。绝对地址16进制10进制有关内容00H0H0 0做除数时处理器发出的中断 溢出条件是:除法类型 结果---------------------------------有符号字 +127有转载 2013-04-11 12:15:53 · 1761 阅读 · 0 评论 -
从头开始编写操作系统
最近在学习《Operating Systems Development》系列文章,很震撼,准备翻译给大家,不过发现已经有人做过了,翻译得非常棒,记录如下:从头开始编写操作系统(1) 第0章:序章http://blog.csdn.net/xiaoxiaoyaya/article/details/6321353从头开始编写操作系统(2) 第1章:介绍http原创 2013-04-23 14:06:55 · 1855 阅读 · 1 评论 -
简单的栈回溯 & 简单的栈回溯欺骗 -- 简单分析
原文地址在: http://hi.baidu.com/iceboy_/item/924f349e10c9fbcfb62531f7#对于我这样的新手好长时间才看懂,本文就那篇文章中的程序来简单分析一下。程序如下:#include #include #include #pragma warning(disable: 4311 4312 4313)int fake_ebp原创 2012-11-11 14:40:23 · 10902 阅读 · 0 评论 -
Understanding C/C++ Strict Aliasing
Understanding C/C++ Strict Aliasing深入理解C/C++中的`Strict Aliasin`规则or - Why won't the #$@##@^% compiler let me do what I need to do!副标题 -- 为什么编译器违背了我的意愿!What's The Problem? 引出问题There's a lot...翻译 2016-05-12 19:19:47 · 2054 阅读 · 0 评论 -
GCC如何处理函数返回一个结构体
本文着眼于GCC如何处理函数返回一个结构体的实现。原创 2017-02-20 17:40:33 · 1242 阅读 · 0 评论 -
CS:APP二进制炸弹phase4
CS:APP二进制炸弹phase4原创 2017-06-14 16:37:29 · 6835 阅读 · 3 评论 -
CS:APP二进制炸弹phase5
CS:APP二进制炸弹phase5原创 2017-06-14 16:38:56 · 6359 阅读 · 0 评论 -
CS:APP二进制炸弹开篇
破解CS:APP的二进制炸弹实验的过程。原创 2017-06-14 10:50:34 · 7843 阅读 · 0 评论 -
CS:APP二进制炸弹phase2
写在前面在前文《CS:APP二进制炸弹phase1》中成功“破解”了phase_1,毕竟是第一个阶段,非常简单。本篇来破解第二阶段。let's go!!! 分析反汇编调用phase_2处的代码如下:同样的,跟phase_1一样,我们输入的字符串首地址存储在寄存器%rdi中。反汇编phase_2:一眼望去,phase_2明显要比phase_1要复杂一些。不过没关系...原创 2017-06-14 16:33:01 · 5117 阅读 · 7 评论 -
CS:APP二进制炸弹phase6
CS:APP二进制炸弹phase6原创 2017-06-14 16:40:05 · 6694 阅读 · 0 评论 -
Inline Assembly in GCC Vs VC++
The article describes differences in inline assembly of gcc and VC++.水平有限,欢迎修正。下载地址:http://download.csdn.net/detail/astrotycoon/4771912或者:http://ishare.iask.sina.com.cn/f/34697145.html翻译 2012-11-15 22:28:13 · 818 阅读 · 0 评论