博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年3月25日

摘要: 在汇编中,一个函数的组成大致如下: MyProc: (CODE) (CODE) RET调用这个函数的时候,使用call MyProc这个语句。其调用过程如下: 它与中断最大的区别就是它知道所调用的函数的具体地址。CALL和RET(return)是一对,INT和IRET是一对。 阅读全文

posted @ 2011-03-25 14:16 天地玄黄 阅读(826) 评论(0) 推荐(0)

2011年3月24日

摘要: 是文件结束符 阅读全文

posted @ 2011-03-24 19:55 天地玄黄 阅读(244) 评论(0) 推荐(0)

摘要: 定义的方式为: <label>: db <data1>,<data2>,… db <data3>,<data4>,… ………… 其中的“db”是Define Byte”的意思,也可以是dw(Define word), dd(Define Double) 数据可以加引号(单引号或者双引号),表示一个字符串。不加,则表示立即数。 每一行的db都是独立的,互不影响,所以每一行的最后可以不加逗号。它们在内... 阅读全文

posted @ 2011-03-24 09:51 天地玄黄 阅读(5998) 评论(0) 推荐(0)

2011年3月23日

摘要: 在一系列的跳转指令中,如果描述词中有greater than或者less than,那么它所比较的是两个有符号的整数。如果描述词中有above或者below,那么它所比较的是两个无符号的整数: 从另一个方面来说这个表: TEST:还有一个比较是测试一个数中某一位是否为1,使用TEST命令: test <operand>,<mask> test ax,00001000B 它的操作和AND相似,设定相... 阅读全文

posted @ 2011-03-23 10:31 天地玄黄 阅读(432) 评论(0) 推荐(0)

2011年3月22日

摘要: Define the Program 把文件中的所有字符都变成用十六进制书写的格式。 Starting with Pseudo-Code 1、最初的伪代码设计如下: Read a char from the input file convert the character to hex string Write the hex string to the output file Repeat un... 阅读全文

posted @ 2011-03-22 18:28 天地玄黄 阅读(433) 评论(0) 推荐(0)

摘要: AND, OR, XOR, NOT <-----------Bitwise logical instructions ROL, ROR, RCL, RCR, SHL, SHR <-------------shift instructions AND op1,op2 结果放在op1中。 AND的一种应用是在一个数中分离出几个bits OR, XOR和AND的格式相同 NOT只有一个操作数 Shift... 阅读全文

posted @ 2011-03-22 13:26 天地玄黄 阅读(402) 评论(0) 推荐(0)

摘要: 我们在写一个二进制数时,一般高位在左,低位在右: 阅读全文

posted @ 2011-03-22 08:35 天地玄黄 阅读(259) 评论(0) 推荐(0)

2011年3月21日

摘要: sys_read: mov eax,3 ;sys_read的系统调用号 mov ebx,0 ;设置标准输入: Standard Input mov ecx.Buff mov edx,BUFFLEN int 80h sys_write: mov eax,4 ;sys_write的系统调用号 mov ebx,1 ;设置标准输出:Standard output mov ecx,Buff mov edx,... 阅读全文

posted @ 2011-03-21 22:06 天地玄黄 阅读(411) 评论(0) 推荐(0)

2011年3月18日

摘要: Linux中,Stack是一种数据的操作方式,对内存中的数据进行操作。 stack是倒置的,从上往下长。 在C语言中,动态内存分配(malloc)是在heap中进行的。汇编中的动态分配本书没有涉及。 当stack和下面的代码部分发生冲撞时,Linux会产生"segmentation fault”,并终止程序。 stack的大小并不一定与.text .data的大小成比例。 当程序开始运行时,sta... 阅读全文

posted @ 2011-03-18 14:50 天地玄黄 阅读(376) 评论(0) 推荐(0)

摘要: 汇编语言首先一定要写注释。 ; Excutable name : EATSYSCALL; Version : 1.0; Created date : 1/7/2009; Last update : 2/18/2009; Author : Jeff Duntemann; Description : A simple program in assembly for Linux, using NASM ... 阅读全文

posted @ 2011-03-18 11:08 天地玄黄 阅读(767) 评论(0) 推荐(0)