随笔分类 - 汇编
摘要:复习(1)[bx]的作用:作为偏移地址与ds配合debug和masm对指令的处理不同:在debug中 mov ax,[0]是指将ds:0处的数据送入al([0]是八位所以不可以是ax)中在masm中 mov ax,[0]只是作为mov ax,0应该写为mov bx,0 mov al,[bx]或者是mov al,ds:[3](2)loop和cx的合作loop为循环,cx为循环的次数(3)debug中的p命令和g命令的使用(4)loop和[bx][bx]:dx=dx+内存的八位数据dl=dl+内存八位数据第六章(1)dw即define word定义字型数据,db(2)代码assume cs:cod
阅读全文
摘要:程序的编写2^3abc segmentmov ax,2add ax,axadd ax,axabc endsendends表示段的结束,end表示程序的结束2012/3/18loop指令(1)loop和cx的相互配合mov cx,循环次数s:循环执行的程序段loop s相当于c中的for和while(2)123x236assume cs:abc ;段寄存器abcabc segmentmov ax,0;将ax赋值为0mov cx,236;定义循环的次数236s:add ax,123;ax累加123loop s;loop相当于for或者是whilemov ax,4c00hint 21habc end
阅读全文
摘要:2012/3/15 15-20(1)mov的形式mov 段寄存器,寄存器 ds,ax mov 寄存器,数据 ax,2 mov 寄存器,寄存器 ax,bxmov 寄存器,内存单元 ax,[0]mov 内存单元,寄存器 [0],axmov 寄存器,段寄存器(2)add和sub如mov一样(3)将123b0h—123bah的内存定义为数据段,累加数据段的前三个单元的数据 代码:mov ax,123bhmov ds,axmov al,0 //al的初始化add al,[0]add al,[1]add al,[2] 将123b0h—123bah的内存定义为数据段,累加数据段的前三个字型的数据 代码:mo
阅读全文
摘要:2012/3/14 12-14栈:主要漏洞(1)内存中字的存储如在0地址处开始存放20000(4e20H)0 20H 低地址单元1 4eH 高地址单元0 20H1 4eH2 12H则1地址存放的字型数据是124eH故有任何两个地址N和N+1将它们看成两个地址单元也可以看成一个字型数据(2)mov al,[0] al存放一个字节8位 即为把一个内存单元的数据读到al中ds为段地址[0]中的0为偏移地址10000H=1000h+0hcpu不支持将数据放进段寄存器,只能放入通用寄存器ax,bx,cx(3)习题3.3 e 1000:0 23 11 22 26 (d查看) d 1386:108a 138
阅读全文
摘要:(1)汇编语言的核心是汇编指令,它决定了汇编的特征。(2)总线分为:地址总线,数据总线,控制总线,其中地址总线的宽度决定的是cpu寻地址的能力,数据总线是指内存与其他器件之间的数据传输,它的宽度决定cpu的速度。控制总线是控制cpu对外部控件的控制,控制总线有多少更就意味着控制的方式有多少种,控制的宽度代表的是cpu对外部的控制能力。(3)内存没有被分为一个一个段,段的划分来自于cpu:段地址*16+偏移地址=物理地址。(4)CS为代码段寄存器,IP为指令针寄存器(5)从cs中读取IP指向内存的指令,读取的指令进入指令缓存器 IP=IP+所读取指令的长度,从而指向下一条指令(6)传送指令MOV
阅读全文

浙公网安备 33010602011771号