摘要:
80x86的指令系统 80x86的指令系统可以分为以下6组: 数据传输指令 传处理指令 算术指令 控制转移指令 逻辑指令 处理机控制指令 数据传送指令 负责把数据、地址或立即数送到寄存器或存储单元中。可以仔细分为以下5种: 1 通用数据传送指令 MOV 传送 MOVSX 带符号扩展传送 MOVZX 阅读全文
2020年10月26日
2020年10月20日
摘要:
数据相关的寻址方式 1 立即寻址方式 直接使用立即数来处理 mov al,5mov ax,3064H 2 寄存器寻址方式 操作数在寄存器中,直接使用寄存器赋值来读取内部的操作数。 另外的方式的简介: 在8086中把操作数的偏移地址称为有效地址,以下的操作都是取得有效地址(EA)的不同途径。 有效地址 阅读全文
2020年10月14日
摘要:
windows下: 代码段: .text段 存放程序源代码(二进制形式) 数据段 只读数据段rodata 存放常量 初始化数据段 .data段 :初始化为非0的全局变量和静态变量 未初始化数据段 .bss段 :初始化为0,未初始化的全局变量和静态变量。程序加载执行前,会将该段整体赋值为0. Stac 阅读全文
2020年9月29日
摘要:
const关键字 1 const来定义常量 使用const定义常量并不安全,可以被指针所修改,因此采用define来定义常亮是更好的选择 #include<stdio.h> int main() { const int a = 10; int *p = &a; *p = 20; return 0; 阅读全文
2020年9月22日
摘要:
scanf()接受字符串 1 scanf只会以'\0'为结束(不安全): scanf函数会一直吸收字符串,如果超出了内存范围也会一直读取,直到读到'\0'为止 2 scanf不能接受空格和字符串: 接受字符串的时候碰到空格和换行会自动终止。 3 scanf接受带有空格的字符串 采用正则表达式: ch 阅读全文
摘要:
首先在windows下安装debug 参考一下连接 https://blog.csdn.net/qq_39564555/article/details/82936535 使用debug 查看、修改CPU中寄存器内容 ;采用debug 的R指令来查看、改变CPU的内容 直接输入R指令,查看所有CPU寄 阅读全文
2020年9月13日
摘要:
1. 预处理 -E xxx.i 预处理文件 gcc -E xxx.c -o xxx.i 1) 头文件展开。 不检查语法错误。 可以展开任意文件。 2)宏定义替换。 将宏名替换为宏值。 3)替换注释。 变成空行 4)展开条件编译 根据条件来展开指令。 2. 编译 -S xxx.s 成为汇编文件 gcc 阅读全文
2020年9月4日
摘要:
1 设置标题 setWindowTitle("") 2 设置窗口初始大小 resize(宽,高) 3 设置窗口固定大小 setFixedSize(宽,高) 4 移动控件 move(x,y) 5 新建控件 QPushButtle *a = new QPushButtle() 6 设置按钮依赖 setP 阅读全文
2020年9月3日
2020年8月5日
摘要:
64位x86-64处理器 针对所有使用x86-64指令集的64位处理器的基本架构细节。包括Intel64和AMD64处理器。 具有以下基本特点: 1.向后兼容x86指令集 2.地址长度为64位,虚拟地址空间为2的64字节 3.可以使用64位通用寄存器 4.比x86-32多了8个通用寄存器 5.物理地 阅读全文