
assembly
慎独喜爱大保健
千里之行 始于足下
展开
-
8086CPU寄存器 & linux bootsect.s分析
##8086CPU寄存器有14个寄存器,每个寄存器都有16位长度,分别为AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。AX、BX、CX、DX被定义为通用寄存器,可以用来暂存数据,互不影响。CS、DS、SS、ES被定义为段寄存器,用来提供内存单元的段地址。8086CPU不支持将数据直接送入段寄存器的操作,但支持将一个寄存器中的内容送入另一个寄存器(通...原创 2019-01-06 22:45:08 · 448 阅读 · 0 评论 -
汇编语言学习之中断
8086CPU中断过程1、(从中断信息中)取得中断类型码;2、标志寄存器的值入栈(因为在中断过程中要改变标志寄存器的值,所以先将其保存在栈中);3、设置标志寄存器的第8位TF和第9位IF的值为0;4、CS的内容入栈;5、IP的内容入栈;6、从内存地址为中断类型码4和中断类型码4+2的两个字单元中读取中断处理程序的入口地址设置IP和CS。汇编中段处理程序的编写方法和子程序的比较相似...翻译 2019-02-05 17:01:02 · 1279 阅读 · 0 评论 -
汇编语言学习之标志寄存器
ZF标志零标志位,它记录相关指令执行后,其结果是否为0.如果结果为0,那么zf=1,反之,则zf=0.影响zf标志的大都是运算指令。PF标志奇偶标志位,它记录相关指令执行后,其结果的所有bit位中1的个数是否位偶数。如果1的个数为偶数,pf=1,如果为奇数,那么pf=0.SF标志符号标志位,它记录相关指令执行后 ,其结果是否为负。如果结果为负,sf=1;如果非负,sf=0....翻译 2019-01-22 23:27:59 · 295 阅读 · 0 评论 -
汇编语言学习之转移指令
操作符offset操作符offset在汇编语言中是由编译器处理的符号,它的功能是取得标号的偏移地址。jmp指令jmp为无条件转移指令,可以只修改IP,也可以同时修改CS和IP。jmp指令要给出两种信息:1、转移的目的地址2、转移的距离(段间转移、段内短转移、段内近转移)jmp short 标号(转到标号处执行指令)–段内短转移方式jmp far ptr 标号–实现...翻译 2019-01-21 23:55:02 · 631 阅读 · 0 评论 -
汇编语言学习之编写第一个程序
程序从写出到执行的过程1、使用文本编辑器,使用汇编语言编写汇编源程序。2、对源程序进行编译链接。汇编链接的过程:1、产生目标文件。2、使用连接程序对目标文件进行链接,生成可在操作系统中直接运行的可执行文件。可执行文件包含两部分内容:1、程序(从源程序中的汇编指令翻译过来的机器码)和数据(源程序中定义的数据)2、相关的描述信息(比如,程序有多大、要占用多少内存空间等)...翻译 2019-01-15 22:16:07 · 568 阅读 · 0 评论 -
汇编语言学习之定位内存地址
and & or 指令and指令:逻辑与指令,按位进行与运算。or指令:逻辑或指令,按位进行或运算。以字符形式给出的数据在汇编程序中,用’…'的方式指明数据是以字符的形式给出的比如:db 'unix’表示的意思是db 75h,6eh,49h,58h[bx+idata][bx+idata]表示一个内存单元,它的偏移地址为bx中的数值加上idataSI &...翻译 2019-01-19 23:24:09 · 1372 阅读 · 0 评论 -
汇编语言学习之[bx]&loop
[bx]的含义mov a1,[bx] 的意思:将一个内存单元的内容送入a1,这个内存单元的长度为2字节(字单元),存放一个字,偏移地址在bx中,段地址在ds中。idata是什么意思约定符号idata表示常量mov ax, [idata] == mov ax,[1]、mov ax,[2]、mov ax,[3]等mov ax, idata == mov ax,1、mov ax,2、mo...翻译 2019-01-18 21:59:37 · 563 阅读 · 0 评论 -
汇编语言学习之寄存器
寄存器一个典型的CPU由运算器、控制器、寄存器等器件构成,这些器件靠内部总线相连。运算器进行信息处理。寄存器进行信息存储。控制器控制各种器件进行工作。内部总线连接各种器件,在他们之间进行数据的传送。通用寄存器对于8086CPU来说,所有的寄存器都是16位的。AX、BX、CX、DX这4个寄存器被定义为通用寄存器,用来存放一般性的数据。AX可以分为AH和AL;BX可以分为BH和BL...翻译 2019-01-13 21:07:32 · 338 阅读 · 0 评论 -
汇编语言学习之基础篇章
机器指令是什么本质上来说,机器指令是一串二进制数据,电子器件通过读取这串数据来进行电子器件内部的与非门、或门等开关选择。汇编指令是什么汇编指令本质上对机器指令进一步包装,形成便于人们记忆的符号。人们通过汇编指令向机器表达自己的逻辑,然后汇编编译器将编写好的汇编指令解析成对应的机器指令,最后机器读取机器指令表达既定的逻辑选择。汇编指令的组成:1、汇编指令:机器码的助记符,有对应的...翻译 2019-01-10 23:49:00 · 148 阅读 · 0 评论 -
汇编语言学习之链接过程相关知识
内存中相关概念.global symbol解释.global 为汇编编译器中的关键字,其作用是使得链接器ld能够识别symbol声明symbol是全局可见的。例如:.global _start —定义_start为外部程序可以访问的标签.text解释.text后面的内容存放在代码段,代码段是可以被cpu每次读取指令取址执行的text段在内存中被映射为只读.bss解释...原创 2019-02-08 16:49:29 · 921 阅读 · 0 评论