汇编
西贡小傻
这个作者很懒,什么都没留下…
展开
-
汇编-1.2-汇编语言基础
1.汇编工作过程 程序员–>汇编指令–>编译器–>机器码–>计算机 2.汇编语言组成 (1).汇编指令:机器码助记符,有对应的机器码。 (2).伪指令:没有对应的机器码,由编译器执行,计算机不执行。 (3).其他符号:如+,-,*,/等,编译器识别,没有对应的机器码。 汇编语言的核心就是机器码! 3.存储器 在一台PC机中,内存的作用仅次翻译 2018-06-29 21:25:55 · 228 阅读 · 0 评论 -
汇编-6.0-包含多个程序段
1.在操作系统的环境中,合法的通过操作系统取得的空间都是安全的,因为操作系统不会让一个程序所用的空间和其他程序以及系统自己的空间相冲突。在操作系统允许的情况下,程序可以取得任意容量的空间。 2.程序取得所需要空间的方法可以有两种方法:一是加载程序的时候程序分配,再就是再程序执行的过程中向系统申请。...转载 2018-07-22 17:38:18 · 112 阅读 · 0 评论 -
汇编-4.1-汇编程序
1.汇编程序写出到执行过程 1.编写汇编程序 使用文本编辑器编辑源程序 2.编译链接 对源程序文件中的源程序进行编译,产生目标文件;再用连接程序对目标文件进行连接,生成可执行文件。 可执行文件: (1).程序(从源程序中的汇编指令翻译过的机器码)和数据(源程序中定义的数据) (2).相关的数据(程序大小,内存占用空间) 3.执行可执行文件的程序 2.源程序 1.伪指令 汇编语...转载 2018-07-15 22:18:46 · 443 阅读 · 0 评论 -
汇编-5.0-[BX]和loop指令
1.要完整的描述一个内存单元,需要两种信息:1.内存单元的地址;2.内存单元的长度(类型)。 2.“()”表示一个寄存器或一个内存单元中的内容。如:(ax)表示ax中的内容。 “()”中的元素可以有3种类型:1.寄存器名;2.段寄存器名;3.内存单元的物理地址(一个20位的数据)。 3.约定符号idata表示常量 用idata表示常量。 3.[BX] mov ax,[bx] 功能:b...转载 2018-07-20 16:18:06 · 159 阅读 · 0 评论 -
汇编-6.2-代码段中使用栈
1.首先要定义可以当作段的内存空间。这段空间应该由系统来分配。assume cs:codesgcodesg segmentdw 123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987hdw 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0start: mov ax,cs mov ss,ax mov ...转载 2018-07-24 11:07:29 · 266 阅读 · 0 评论 -
汇编-7.1-灵活定位内存地址的方法
1.[bx+idata] 我们用[bx]的方式来指明一个内存单元,还可以用一种更灵活的方式来指明内存单元:[bx+idata]表示一个内存单元,它的偏移地址为(bx)+idata(bx中的数值加上idata)。 如:mov ax,[bx+200] 数学化的描述为:(ax)=((ds)*16+(bx)+200) 2.用[bx+idata]的方式进行数组的处理 原来定位字符串的字符:st...转载 2018-07-24 19:02:11 · 244 阅读 · 0 评论 -
汇编-7.0-灵活定位内存地址的方法
1.and和or指令 (1).and指令:逻辑与指令,按位进行与运算。 (2).or指令:逻辑或指令,按位进行或运算。 2.ASCII码 如果我们要显示“a”,就要给显卡提供“a”的ASCII码,方法是将“a”的ASCII码写入显存。 3.以字符形式给出的数据 汇编中,用‘… …’的方式指明数据是以字符的形式给出的,编译器将它们转化为相应的ASCII码。 如:db ‘unIX’相当于...转载 2018-07-24 18:16:46 · 220 阅读 · 0 评论 -
汇编-6.3-将数据、代码、栈存入不同的段
1.将数据、栈、代码存入到一个段中使得程序显得混乱。 2.如果数据、栈、代码需要的空间超过64KB,就不能放在一段中(一个段的容量不能大于64KB(8086CPU的16位的,段的大小2^16Byte))。 3.可以通过定义代码段的方法来定义多个段,然后再在段里面定义需要的数据,或者通过定义数据来取得栈的空间。 程序6.4assume cs:code,ds:data,ss:stack...转载 2018-07-24 15:49:43 · 546 阅读 · 0 评论 -
汇编-3.1-寄存器(内存访问)
1.内存中字的存储 CPU中,用16位寄存器来存放一个字。高8位存放高位字节,低8位存放低位字节。在内存中存储时,由于内存单元是字节单元(一个单元存放一个字节),则一个字节要用两个地址连续的内存单元来存放,这个字节的低位字节存放在地址单元的低地址单元中,高位字节存放在高地址单元中。 2.字单元 即存放一个字型数据(16位)的内存单元,由两个地址连续的内存单元组成。高地址内存单元中存放字型数据...翻译 2018-07-11 17:21:43 · 235 阅读 · 0 评论 -
汇编-2.1-寄存器
1.一个CPU由运算器、控制器、寄存器等器件组成,这些器件由内部总线相连。相对于CPU内部总线来说是外部总线。内部总线实现CPU内部各个器件的联系,外部总线实现CPU和主板上其他器件的联系。 (1).运算器进行信息处理; (2).寄存器进行信息存储; (3).控制器控制各种器件进行工作; (4).内部总线链接各种器件,在它之间进行数据的传送。 2.通用寄存器 AX,BX,CX,DX这4...翻译 2018-06-30 21:35:54 · 139 阅读 · 0 评论 -
汇编-6.1-在代码段中使用数据
1.我们如果要一个程序在加载的时候取得所需要的空间,则必须要在源程序中做出说明。我们通过在源程序中定义段来进行内存空间的获取。 2.我们不能自己随便决定哪段空间可以使用,应该让系统来为我们分配。我们可以在程序中,定义我们希望处理的数据,这些数据就会被编译、连接程序作为程序的一部分写到可执行文件中。当可执行文件中的程序被加载入内存时,这些数据也同时被加载入内存中。与此同时,我们要处理的数据也就自然...转载 2018-07-22 19:13:34 · 400 阅读 · 0 评论