弦外之音

好消息:《SRS原理》一书荣获官方推荐,访问地址:https://srs.xianwaizhiyin.net/

ST 是 state-thread 的缩写。state-thread 是一个 C 语言实现的协程库,这个库是 8年前的, 《state-thread 官网文档》。 ST 协程优势有以下几点: 1,从性能上来说,ST和传统的EDSM实现几乎一样快。也就是用 ST 跟用 单线程 e...

发布 0 条评论

GAS 是 GNU as 的缩写。Linux 里面 编译汇编程序 有两种方式,一种是 as + ld,另一种是 gcc。下面是汇编代码。 .data output: .ascii "hello,world!\n" len = . - output ​ .text .globl _start _start: movl ...

发布 0 条评论

操作系统内核代码绝大部分使用 C 语言编写,只有一小部分使用汇编语言编写,例如与特定 体系结构 相关的代码和对性能影响很大的代码。 GCC提供了内嵌汇编的功能,可以在C代码中直接内嵌汇编语言语句,大大方便了程序设计。 代...

发布 0 条评论

几乎每个做应用开发的工程师,学习汇编的时候,都会遇到这样一个困惑,各种汇编书籍,例如《汇编语言 基于x86》《现代x86汇编程序设计》这些书籍都是讲 汇编指令 在单核里面的情况。我们做应用开发的时候是经常用到多线程的,而我们...

发布 1 条评论

本文主要讲解 两个重点。 1,汇编代码 对应的 机器码是怎么样的 2,为什么用汇编实现某些功能会比 C语言 性能好。 google_ads_content C语言代码: int add_two(int a,int b){ return a+b; } int main() ...

发布 0 条评论

汇编里面,函数内局部变量的使用,比较简单,直接把 esp 减去多少,就能预留多少空间给 局部变量。 因为 esp 是后进 先出,所以 esp 是越来越小。直接截图《X86 汇编语言,基于x86》的内容。 讲解完毕。 相关阅读: ...

发布 0 条评论

函数传参,主流 有两种技术方式 实现。 1,堆栈传参。 2,寄存器传参。 堆栈传参 的实现比较简单,不容易出错,所以应用比较广泛。寄存器传参 速度快,性能好。 既然 寄存器传参 的方式那么好,高级语言为什么不全部都用...

发布 0 条评论

如果程序运行在 32位 模式下,常用的寄存器(register)有以下8个。 EAX,EAX 是 累加器 (accumulator), 它是很多加法乘法指令的缺省寄存器。EBX,EBX 是 基地址(base)寄存器, 在内存寻址时存放基地址。ECX,ECX 是 计数器(c...

发布 0 条评论

如果程序运行在 32位 模式下,常用的寄存器(register)有以下8个。 EAX,EAX 是 累加器 (accumulator), 它是很多加法乘法指令的缺省寄存器。EBX,EBX 是 基地址(base)寄存器, 在内存寻址时存放基地址。ECX,ECX 是 计数器(c...

发布 0 条评论

汇编其实有不同的语法的,主要有两种 Intel 的 和 AT&T 的。应该是两个公司为了各自利益 搞了两种汇编语法出来。 虽然语法不同,但是他们用的是同一种CPU指令集。 AT&T 风格 主要是GNU使用的,也就是给 linux 用的...

发布 0 条评论