前面已经写到了第三章的数据类型 的那一部分

接下来是一些关于伪指令和其他杂七杂八的东西

1. 当前地址计数器:   $

    常用于  计算数组以及字符串的长度,如:

.data
list db ,,,,,
listp db ($-list) ;代表的是数组元素所占内存空间的长度,也是一字为单元的数组的元素个数,
;如要求元素大小为字,或双字,以及更大的数据类型则需要除以 type list 或者直接除以元素大小

2. 等号伪指令(=)与EQU和它的"小兄弟" TEXTEQU

区别:等号伪指令只能用于定义整数表达式,而EQU则有三种格式,如下

name equ expression
name equ sybal
name equ <text>

但是EQU不能重复定义,=则可以,与EQU相似的是TEXTEQU,他同样有三种格式,但它与EQU最大的不同的是他可重定义

3.大端储存格式与小端储存格式

4. 整数的全零扩展与符号扩展

MOVZX (全零扩展)与MOVSX(符号扩展)

这边符号扩展提一下,在将小数传送给大数时,符号扩展会将小数的最高位复制到大数的高位

5. LAHF和SAHF

  LAHF:将EFLAGS的符号位,复制到AH中,

  SAHF:将AH中的内容复制到EFLAGS(RFLAGS),加载状态标志

6. XCHG  交换数据

  不使用所谓的立即数作为操作数

7.直接偏移量

  [变量名+常数]

8.inc 和dec 不影响进位标志位

9. offset

  offset: 伪指令,数据标号的偏移量,直接-偏移量操作数

    直接使用数据标号作为地址的方式称为直接寻址

    使用offset 将数据的地址返回给register,使用register作为寻址地址的方式称为间接寻址

10.PTR

  PTR: 重写一个已经被声明过的 操作数的大小类型

  注: PTR只能与标准汇编类型一起使用

11.变址操作数

12.loop是先ecx-1,在进行判断的

Assembly language 再读---续的更多相关文章

  1. PythonStudy——汇编语言 Assembly Language

    汇编语言 汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操 ...

  2. 再读《Java编程思想 》

    前段时间在豆瓣上无意间看到一个帖子"我为什么把thinking in java 读了10遍",是11年的帖子,下面评论至今,各种声音都有,不过大多数还是佩服和支持的.我个人来讲也是 ...

  3. 再读《C++ Primer》——变量和基本类型

    刚上大学那时,几个室友一块买了本<C++ Primer>第4版,看了一遍后就没怎么碰了,偶尔拿出来翻翻,当作工具书使用.后来知道有第5版了,一直觉得内容差不多吧.直到最近,再读其中的一些内 ...

  4. 1.2 ASSEMBLY LANGUAGE

    People are much happier moving up the ladder,socially or even technically.So our profession has move ...

  5. 再读GFS论文

    http://loopjump.com/gfs_paper_note/ 再读GFS的一些笔记.主要涉及GFS架构.Chunk大小选择的一些折中考量.元数据管理及锁.写数据流程.GFS一致性模型的理解. ...

  6. Notes on <Assembly Language step by step>

    By brant-ruan Yeah, I feel very happy When you want to give up, think why you have held on so long. ...

  7. Calling 64-bit assembly language functions lodged inside the Delphi source code

    Code: http://www.atelierweb.com/calling-64-bit-assembly-language-functions-lodged-inside-the-delphi- ...

  8. An Assembly Language

    BUFFER OVERFLOW 3 An Assembly Language Introduction Basic of x86 Architecture Assembly Language Comp ...

  9. 再读Android sqlite

    再读Android sqlite Android原生支持sqlite数据库操作,sqlite时轻量级关系型数据库,支持标准sql语句.Android对sqlite进行良好的接口封装来避免sql注入等安 ...

随机推荐

  1. VS #include 【bits/bstdc++.h】出错

    目录 1. 本文地址 2. 按 3. 操作步骤 1. 本文地址 博客园:https://www.cnblogs.com/coco56/p/11163142.html 简书:https://www.ji ...

  2. NLP 中 Attention Model 解析

    Attention Model,简称AM模型,本文只谈文本领域的AM模型,其实图片领域AM的机制也是相同的. 目前绝大多数文献中出现的AM模型是附着在Encoder-Decoder框架下的,但是其实A ...

  3. 快速排序的python实现

    def quick_sort(array, left, right): if left < right: base_index = division(array, left, right) qu ...

  4. 51nod 1554 欧姆诺姆和项链

    有一天,欧姆诺姆发现了一串长度为n的宝石串,上面有五颜六色的宝石.他决定摘取前面若干个宝石来做成一个漂亮的项链. 他对漂亮的项链是这样定义的,现在有一条项链S,当S=A+B+A+B+A+...+A+B ...

  5. opengl 单缓冲与双缓冲

    1.说明 GLUT_SINGLE  指定单缓存窗口 GLUT_DOUBLE  指定双缓存窗口 应用程序使用单缓冲绘图时可能会存在图像闪烁的问题. 这是因为生成的图像不是一下子被绘制出来的,而是按照从左 ...

  6. luogu P3411 序列变换

    链接 P3411 序列变换 如果要最小化答案,那么就最大化不移动的数. 那么不移动的子序列一定是最后答案的一段连续区间,而移动的数我们是一定有办法把他们还原的. 设\(f_{i}\)表示\(i\)点的 ...

  7. 触发写Redo&nbsp;Log的条件

    参见:http://www.ixora.com.au/notes/redo_write_triggers.htm http://www.eygle.com/archives/2005/02/redoa ...

  8. NOIP2015 提高组 Day T3 斗地主

    题目描述 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共5张牌来进行的扑克牌游戏.在斗地主中,牌的大小关 系根据牌的数码表示如下:3<4< ...

  9. TFRecords文件的生成和读取(1)

    参考:https://blog.csdn.net/u012222949/article/details/72875281 参考:https://blog.csdn.net/chengshuhao199 ...

  10. 2017ICPC沈阳网络赛 HDU 6201 -- transaction transaction transaction(树上dp)

    transaction transaction transaction Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 132768/1 ...