汇编
文章平均质量分 67
许诺丶L
中北大学的一个男孩纸
展开
-
汇编共享库
1. 共享库在编程中,共享代码文件被称为共享库、共享对象、动态链接库、DLL文件等。2. 使用共享库生成命令:ld helloworld-lib.o -o helloworld-lib.out -dynamic-linker /lib/ld-linux.so.2 -lc -m elf_i386-dynamic-linker /lib/ld-linux.so.2 操作系统将加载程序/lib/ld-linux.so.2,以加载外部库并将其链接到程序。/lib/ld-linux.so.2这样的程原创 2021-03-03 16:54:19 · 194 阅读 · 1 评论 -
x86处理器数据类型
intint型数据是指整数(在x86处理器上占据4字节)longlong型数据也是指整数(在x86处理器上占据4字节)long longlong long型数据是指比整数大的long型数据(在x86处理器上占据8字节)shortshort型数据是指比int型短的整数(在x86处理器上占据2字节)charchar型数据是单字节整数,最常用于存储字符数据,因为ASCII字符串通常一个字符用一字节来表示floatfloat型数据是浮点数(x86处理器上位4字节)doubledouble.原创 2021-03-03 16:34:25 · 721 阅读 · 1 评论 -
汇编读写结构化数据
acsii一个字符占一个字节 其中\n、\0等属于也属于一个字符32系统中 short与short int型数据占2个字节(16位);int、long int、long型数据占4个字节(32位)vi编辑模式 u撤销 ctrl+r重做ls | grep -E "\.s$"linux.s# Linux define .equ SYS_EXIT, 1 .equ SYS_READ, 3 .equ SYS_WRITE, 4 .equ SYS_OPEN, 5 .equ SYS_CL原创 2021-03-02 21:44:55 · 158 阅读 · 0 评论 -
UNIX文件处理
设置.bss缓冲区.lcomm指令将创建一个符号my_buffer,指代我们用作缓冲区的500字节的存储位置原创 2021-02-28 17:25:39 · 865 阅读 · 0 评论 -
C++内存模型以及寄存器指针rsp和rbp
内存栈顶指针sp偏移系统Ubuntu-18.04 环境gcc 7.5.0代码段1#include <iostream>using namespace std;int main(){ char ch = 'a'; int num1 = 1; return 0;}命令g++ -g test.cpp -o test编译, 通过gdb test --...原创 2020-03-20 22:56:10 · 17871 阅读 · 6 评论 -
汇编C语言调用约定(递归函数)
1. 递归函数基线条件:递归停止的地方fac函数:.type factorial, @functionfactorial:pushl %ebpmovl %esp, %ebp# 4(%ebp) 保存返回值地址movl 8(%ebp), %eaxcmp $1, %eaxje end_factorialdecl %eaxpushl %eaxcall factorialmovl 8(%ebp), %ebximull %ebx, %eaxend_factorial:mov原创 2021-02-20 14:16:53 · 326 阅读 · 0 评论 -
汇编C语言调用约定(标准函数)
commandas exit.s -o exit.o # exit.s source file exit.o target fileld exit.o -o exit # ld 链接器命令./exit # exe# 注释echo $? # 获取上次程序上次输出结果, 这个值保存在%ebx中伪指令 汇编指令# .section 将程序分为几个部分 .data命令是数据段的开始.section .data# .section .text 文本段的开始 文本段是存放程序指令的原创 2021-02-20 14:15:54 · 492 阅读 · 0 评论 -
gdb TUI使用方法
TUI(TextUser Interface):GDB调试的文本用户界面,可以方便地显示源代码、汇编和寄存器文本窗口1. 启动 gdb tui 调试2. tui命令3. layout 命令(gdb) help layoutChange the layout of windows.Usage: layout prev | next | <layout_name>Layout names are: src : Displays source and command w.原创 2021-02-20 14:15:01 · 822 阅读 · 0 评论 -
汇编编译和gdb调试命令列表
1. 汇编编译命令as exit.s -o exit.o 编译指令:exit.s is source file and exit.o is target fileld exit.o -o exit 链接指令:ld 链接器命令# something 注释echo $? 获取上次程序上次输出结果, 这个值保存在%ebx中在64位机器上编译链接32位汇编代码,as 加参数 --32,ld 加参数 -m elf_i386对于错误提示:invalid instruction suffix for pus原创 2021-02-20 14:14:06 · 626 阅读 · 0 评论