Assembly language 再读---续

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

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

1. 当前地址计数器:   $

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

.data
list db 12,34234,453,45,43,5
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,在进行判断的

原文地址:https://www.cnblogs.com/love-coding/p/11782918.html

时间: 2024-07-29 16:42:42

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

十年后2023年再读这篇文章,看看我将会怎么样?

http://blog.csdn.net/wojiushiwo987/article/details/8453881看到一篇文章不错[清华差生10年奋斗经历] ,写给将要工作的自己,十年后2023年再读这篇文章,看看我将会怎么样? 在2012年收关时刻,看到如此激励的文章,实在是我的幸运.文章讲述了所谓清华差生的奋斗史,从毕业.各种工作经历.与同事.领导关系细致入微的剖析了实战的职场及人和人差距拉开的原因等.正如文中作者指出的那样,这也是我的心灵导师俞敏洪一直教导的,”人生是跑马拉松的过程,不在

1.2 ASSEMBLY LANGUAGE

People are much happier moving up the ladder,socially or even technically.So our profession has moved from machine code to C/Win32 API,to C++/MFC,to java/AWT(Abstract Window Toolkit,classes for building graphics user interface in Java)/JFC(Java Found

再读GFS论文

http://loopjump.com/gfs_paper_note/ 再读GFS的一些笔记.主要涉及GFS架构.Chunk大小选择的一些折中考量.元数据管理及锁.写数据流程.GFS一致性模型的理解.快照的实现原理.过期失效副本检测等几个问题.

An Assembly Language

BUFFER OVERFLOW 3 An Assembly Language Introduction Basic of x86 Architecture Assembly Language Compiler, Assembler & Linker Function Operation Stack Stack Operation Stack based Buffer Overflow Shellcode: The Payload Vulnerability & Exploit Exampl

杨绛先生送给年轻人的9句话,值得一读再读!

杨绛先生送给年轻人的9句话,值得一读再读! 1.你的问题主要在于读书不多而想得太多. 2.如要锻炼一个能做大事的人,必定要叫他吃苦受累,百不称心,才能养成坚忍的性格.一个人经过不同程度的锻炼,就获得不同程度的修养,不同程度的效益.好比香料,捣得愈碎,磨得愈细,香得愈浓烈. 3.有些人之所以不断成长,就绝对是有一种坚持下去的力量.好读书,肯下功夫,不仅读,还做笔记.人要成长,必有原因,背后的努力与积累一定数倍于普通人.所以,关键还在于自己. 4.少年贪玩,青年迷恋爱情,壮年汲汲于成名成家,暮年自安

再读J2ME游戏编程

再读J2ME游戏编程(2013.11.01) 决定再读一遍J2ME游戏编程.这本书是我2005年购自黄岛新华书店,那是第一次听说J2ME可以开发手机上的游戏,立刻就惊呆了,久久不能离去,再书店的角落捧着此书贪婪的看着,因为就这一本,可笑的怕被别人先买走,当天花了RMB79购入,这是近十天的生活费了. 重读此书,作为对作者Martin.J.Wells的崇拜之情,也因为此书是自己游戏开发的启蒙读物.虽然,从现在来讲,J2ME技术本身已经过时,但是此书中包含的游戏开发的思想,流程,步骤,术语,以及技术

Assembly Language

Programming in machine language can be very tedious and error prone. Instead of using ones and zeros, an assembly language has an advantage, because it uses mnemonics (abbreviations) for the instructions and variable names for memory locations, inste

CSCI 2121: Computer Organization Assembly Language

CSCI 2121: Computer Organization andAssembly LanguageLab 5Design Sequential Circuits in Verilog IIIFebruary 27, 20191 Learning Objectives In this lab, you will use what we have learned about sequential circuits to implement differenttypes of shift re

Assembly language:1-1 Machine Language

Refer&Links https://www.computerhope.com/jargon/m/machlang.htm <Assembly language>-Wang shuang Terms Term: Machine language Intro: Sometimes referred to as?machine code?or?object code,?machine language?is a collection of?binary?digits or bits th