汇编
mvpsendoh
这个作者很懒,什么都没留下…
展开
-
标志位作用及操作(转)
一、运算结果标志位1、进位标志CF(Carry Flag)进位标志CF主要用来反映运算是否产生进位或借位。如果运算结果的最高位产生了一个进位或借位,那么,其值为1,否则其值为0。使用该标志位的情况有:多字(字节)数的加减运算,无符号数的大小比较运算,移位操作,字(字节)之间移位,专门改变CF值的指令等。2、奇偶标志PF(Parity Flag)奇偶标志PF用于反映运算结果中“1”的个数的奇原创 2011-06-15 20:29:00 · 1884 阅读 · 0 评论 -
为什么要学好汇编(转)
这个问题太抽象。 汇编是干什么的?为什么要学好汇编?不学不行吗?要学好计算机非得学好汇编吗?乍看到这些问题,真是一头雾水。学好汇编会有什么好处?学好汇编老板就给你涨工资?还是学好汇编上天就会赐给你个大美女?还是政府就会给你解决住房问题?真是搞不懂。不过倒可以肯定头脑没大问题的人不会选择上面三个答案。那到底是为什么呢?是啊,停留在问题的表面似乎永远找不到答案。我们试图找一下答案,我们从这里入手,转载 2011-06-19 20:33:00 · 730 阅读 · 0 评论 -
简化段定义伪指令
不是很明白这个概念,去网上找了些资料:看看来自http://www.cnblogs.com/hailong/archive/2011/01/27/1946457.html的博文:段的简化定义新版汇编语言提供了段的简化定义方法,从而使程序员可以方便地定义段。无论是编写独立的汇编语言程序还是编写供高级语言程序调用的函数,简化的段定义伪指令几乎总是使程序设计更容易。本节介绍段的简化定转载 2011-06-19 16:04:00 · 1207 阅读 · 0 评论 -
OFFSET LEA的区别
首先,LEA指令可以使用各种存储器寻址方式,如,LEA BX,[DI],LEA BX,TABLE[DI],LEA SI,[BX+DI]等,这些指令都是把计算出来的有效地址送目的寄存器,而OFFSET不能使用这些寻址方式,它只作用于像TABLE这样的简单变量(或标号)。 其次,对简单变量,OFFSET指示符比LEA执行速度快,因为MOV BX, OFFSET TABLE指令在汇编时,由汇编程序转载 2011-06-23 16:32:00 · 1866 阅读 · 0 评论 -
汇编学习笔记(二)
汇编语言包括顺序结构、分支结构和循环结构一.汇编语言的语句(一)语句的种类和格式1.汇编语言语句的种类: 包括指令语句,伪指令语句,宏语句 语句指令有对应的机器指令。 伪指令语句没有对应的机器指令,只是指示汇编程序如何汇编源程序,包括符号定义, 变量的定义、段的定义2.语句的格式:指令语句与伪指令语句的格式相似,都由四部分组成 指令语句的格式: 标号: 指令助记符 操作数 ;注释 伪指令语句的格式原创 2011-06-23 19:47:00 · 1067 阅读 · 0 评论 -
TYPE SIZE LENGTH小区别
这几个都是数值回送操作符。这些操作符把一些特征或存储器地址的一部分作为数值回送。(1)TYPE格式:TYPE expression如果该表达式是变量,则汇编程序将回送该变量的以字节数表示的类型:DB(字节)为1,DW(字)为2,DD(双字)为4,DF(六字节的字)为6,DQ(4字)为8,DT(10个字节)为10。如果表达式是标号,则汇编程序将回送代表该标号类型的数值:NEAR为-1,F转载 2011-06-19 14:30:00 · 2994 阅读 · 0 评论 -
汇编学习笔记(一)
一.寻址方式立即寻址:MOV AX,1234HMOV AL,5MOV BX,3064H寄存器寻址:可为AX/BX/CX/DX/SI/DI/SP/BP/AL/AH/BL/BH/CL/CH/DL/DHMOV AX,BX直接寻址:有效地址即偏移地址MOV AX,[8054] 默认DS 段前缀可用符号地址代替数值地址注意:MOV AX,VALUE等价于MOV AX,[VALUE]寄存器间接寻址原创 2011-06-21 23:37:00 · 1995 阅读 · 1 评论 -
汇编学习笔记(三)
一.子程序设计如果某个程序片段将反复在程序中出现,就把它设计成子程序或某个程序片段具有通用性,可供许多程序共享,就把它设计成子程序(一)过程调用和返回指令 调用前必须先压入堆栈。 过程调用指令有段内调用和段间调用之分。 过程返回指令也有段内返回和段间返回之分。 段内:近调用 近返回 段间:远调用 远返回 1.过程调用指令 过程调用指令先把子程序的返回地址(即CALL指令的下一条指令的地址)压入堆原创 2011-06-23 22:40:00 · 591 阅读 · 0 评论