随笔分类 - 汇编语言
基于x86处理器的汇编语言
搭建一键化编译汇编语言的环境
摘要:搭建一键化编译汇编语言的环境 采用的方法是:nasm(编译器)和notepad++。 首先下载nasm和notepad++ nasm: NASM notepad++: https://notepad-plus-plus.org/ 一键化编译生成.bin文件: 1,启动NotePad++,在菜单上选择
阅读全文
汇编语言-内联汇编
摘要:汇编语言-内联汇编 也就是把汇编和C/C++合在一起 内联汇编 需要在指令前面添加汇编关键字 行内联汇编 _asm pushad; _asm mov eax,0x12345678; 块内联汇编 _asm { Pushad; Popad; } 利用汇编来实现Windows的函数 在调用自带的函数的时候
阅读全文
汇编语言-端口(port)
摘要:汇编语言-端口(port) 相当于计算机和硬件还有网络的传输交流的一个通道 硬件端口 CPU通过接口寄存器或特定电路与外设进行数据传送,这些寄存器或特定电路称之为端口。 其中硬件领域的端口又称接口,如:并行端口、串行端口等。 网络端口 在网络奇数中,端口(Port)有好几种意思。集线器、交换机、路由
阅读全文
汇编语言-int指令-1-
摘要:汇编语言-int指令-1- 终端信息可以由CPU的外部和内部,这里也可以有int指令引发终端 int指令 int指令的格式为,int n,n为中断类型码 功能:引发中断 执行过程 1 取终端类型码n 2 标志寄存器入栈 3 cs,ip入栈 4 跳转 BIOS和DOS所提供的中断例程 在系统板的ROM
阅读全文
汇编语言-中断-1
摘要:汇编语言-中断-1 任何一个CPU,都可以在执行当前指令后收到另外一个信息来对新的信息来处理。 中断是意思就是CPU不在继续向下执行,而是转到处理别的信息。 中断信息可以是CPU的内部和外部、 外部中断一般是指由计算机外设产生的中断请求,如:键盘中断,打印机中断等等 内部中断是指因硬件出错(如突然断
阅读全文
标志寄存器
摘要:标志寄存器 CPU内部有一种特殊寄存器,用来存储相关指令的某些结果,用来为CPU执行相关指令提供行为依据,用来控制CPU的相关工作方式 这种寄存器在8086中称为标志寄存器,8086中的标志寄存器通常是16位,flag寄存器是每一位有每一位的意义和普通寄存器不同。 ZF标志 flag的第六位是ZF,
阅读全文
CALL和RET指令
摘要:CALL和RET指令 call和ret属于转移指令,都修改IP或者CS,IP。进程用来设计子程序,也就是函数 ret和retf ret指令用栈中的数据来修改IP,实现近转移 retf指令用栈中的数据来修改cs和ip,实现远跳转 ret 在汇编中执行ret的指令时,需要进行两步操作 (ip)=((ss
阅读全文
向显存写数据x8086
摘要:向显存写数据x8086 在内存的地址控件中,B8000H~BFFFFH这段32kb的空间是80x25的彩色字体显示缓冲区,向这个内存中写入数据,写入的内容会立即直接出现在显示器上 在80x25彩色字符模式下,显示器可以显示25行,每行25个字符,每个字符可以有256种属性 那么可以知道的是一个字符在
阅读全文
汇编语言实现嵌套循环
摘要:assume cs:code,ds:datadata segment db 'ibm' db 'dec' db 'dos' db 'vax'data ends stack segment dw 0,0,0stack ends code segment start: mov ax,data mov d
阅读全文
80x86指令系统-1-数据传送指令
摘要:80x86的指令系统 80x86的指令系统可以分为以下6组: 数据传输指令 传处理指令 算术指令 控制转移指令 逻辑指令 处理机控制指令 数据传送指令 负责把数据、地址或立即数送到寄存器或存储单元中。可以仔细分为以下5种: 1 通用数据传送指令 MOV 传送 MOVSX 带符号扩展传送 MOVZX
阅读全文
汇编语言-寻址方式-地址和数据相关的寻址方式
摘要:数据相关的寻址方式 1 立即寻址方式 直接使用立即数来处理 mov al,5mov ax,3064H 2 寄存器寻址方式 操作数在寄存器中,直接使用寄存器赋值来读取内部的操作数。 另外的方式的简介: 在8086中把操作数的偏移地址称为有效地址,以下的操作都是取得有效地址(EA)的不同途径。 有效地址
阅读全文
Windows10下的debug
摘要:首先在windows下安装debug 参考一下连接 https://blog.csdn.net/qq_39564555/article/details/82936535 使用debug 查看、修改CPU中寄存器内容 ;采用debug 的R指令来查看、改变CPU的内容 直接输入R指令,查看所有CPU寄
阅读全文
汇编语言-X86处理器架构-64位x86处理器
摘要:64位x86-64处理器 针对所有使用x86-64指令集的64位处理器的基本架构细节。包括Intel64和AMD64处理器。 具有以下基本特点: 1.向后兼容x86指令集 2.地址长度为64位,虚拟地址空间为2的64字节 3.可以使用64位通用寄存器 4.比x86-32多了8个通用寄存器 5.物理地
阅读全文
汇编语言-X86处理器架构-32位x86处理器
摘要:32位x86处理器架构 包括了intel IA-32系列成员和所有32位AMD处理器。 1 操作模式 x86处理器有三个主要模式分别是:保护模式,实地址模式和系统管理模式以及一个保护模式的特殊模式的子模式:虚拟8086模式。 引入一个定义:程序在运行被分配的内存称之为段。 1.1 实地址模式(Rea
阅读全文
汇编语言-X86处理器架构-一般概念
摘要:一般概念: 该博客的汇编语言全是基于x86处理器 X86处理器架构包括了所有intel IA-32和Intel64处理器。 1 基本微机设计 1.1 架构 微计算机的基本设计:中央处理器(CPU)作为算数和逻辑操作的部件,包含了有限数量的存储位置-寄存器(register),高频时钟,控制单元CU和
阅读全文
汇编语言基础-1 基本语言元素
摘要:1 基本语言元素: 本次汇编语言学习,采取的是Microsoft MASA的汇编器语法规则。 1.1 第一个汇编程序 1 main PROC 2 mov eax,5 ;把数字5送入寄存器eax 3 add eax,6 ;eax寄存器加6 4 5 INVOKE ExitProcess,0 ;程序结束6
阅读全文
浙公网安备 33010602011771号