当前位置: 首页 > news >正文

宁波自助建站公司万网的网站代码怎么看

宁波自助建站公司,万网的网站代码怎么看,宣传片拍摄手法,阿里巴巴免费做网站直接寻址很少用于数组处理,因为用常数偏移量来寻址多个数组元素时,直接寻址并不实用。取而代之的是使用寄存器作为指针(称为间接寻址(indirect addressing) ) 并控制该寄存器的值。如果一个操作数使用的是间接寻址, 就称之为间接操作数(indie…

直接寻址很少用于数组处理,因为用常数偏移量来寻址多个数组元素时,直接寻址并不实用。取而代之的是使用寄存器作为指针(称为间接寻址(indirect addressing) ) 并控制该寄存器的值。如果一个操作数使用的是间接寻址, 就称之为间接操作数(indie ct operand) 。
 

间接操作数

保护模式下任何一个32位通用寄存器(EAX、EBX、ECX、EDX、ESI、EDI、EBP及ESP) 用中括号括起来就成为间接操作数。寄存器中包含的是数据的地址
 


.386  
.model flat,stdcall 
option casemap:none.data   
byteVal BYTE 10hExitProcess PROTO,dwExitCode:DWORD      .code  
main PROC   mov esi, OFFSET byteVal mov al, [esi]            ;AL=10h,[esi]表示esi地址中的数据INVOKE ExitProcess,0  
main ENDP   
END main  

如果目的操作数使用间接寻址,则新值将存入由寄存器指向的内存位置。


.386  
.model flat,stdcall 
option casemap:none.data   
byteVal BYTE 10hExitProcess PROTO,dwExitCode:DWORD      .code  
main PROC   mov bl,88hmov esi , OFFSET byteValmov [esi],bl                ;把bl中的值存入esi表示的地址中mov al,[esi]            ;al=88hINVOKE ExitProcess,0  
main ENDP   
END main  

PTR与间接操作数一起使用

PTR与间接操作数一起使用一个操作数的大小可能无法从指令的上下文直接看出来。

下面的指令会导致汇编器产生“operand must have size”(操作数必须有大小) 的报错消息:

inc [esi]

汇编器不知道ESI指向的是字节、字、双字, 或其他数据大小。

PTR操作符则可以确定操作数的大小,如下例所示:


.386  
.model flat,stdcall 
option casemap:none.data   val BYTE 12h ExitProcess PROTO,dwExitCode:DWORD      .code  
main PROC   mov esi,OFFSET valinc BYTE PTR [esi]   ;指明BYTE大小mov eax,[esi]        ;EAX = 00000013INVOKE ExitProcess,0  
main ENDP   
END main  


数组

间接操作数是步进遍历数组的理想工具。
 


.386  
.model flat,stdcall 
option casemap:none.data   arrayB BYTE 10h, 20h, 30h
arrayW WORD 1000h, 2000h, 3000hExitProcess PROTO,dwExitCode:DWORD      .code  
main PROC   mov esi, OFFSET arrayB mov al, [esi]              ;al=10hinc esimov al, [esi]              ;al=20hinc esimov al, [esi]              ;al=30hmov esi, OFFSET arrayW mov ax, [esi]             ;ax=1000hadd esi, 2mov ax, [esi]             ;ax=2000hadd esi, 2mov ax, [esi]             ;ax=3000hINVOKE ExitProcess,0  
main ENDP   
END main  


变址操作数

变址操作数(indexed operand) 是指在寄存器上加上常量, 从而产生一个有效地址。任何32位通用寄存器都可用作变址寄存器。MASM允许使用以下两种基本格式(括号是符号表示的一部分):

变址操作数能以两种不同格式之一出现,即或者是变量名与寄存器相结合,或者是整数常量与寄存器相结合。在前一种格式中,变量名由汇编器转换为常量,表示变量的偏移量。下面的例子显示了两种表示形式:

变址操作数非常适合用于数组处理。在访问第一个数组元素之前,变址寄存器应初始化为0:
 


.386  
.model flat,stdcall 
option casemap:none.data   
arrayW WORD 1000h, 2000h, 3000hExitProcess PROTO,dwExitCode:DWORD      .code  
main PROC   mov esi, OFFSET arrayW mov ax, [esi]              ;ax=1000hmov ax, [esi+2]            ;ax=2000hmov ax, [esi+4]            ;ax=3000hmov ax, [4+esi]            ;ax=3000hINVOKE ExitProcess,0  
main ENDP   
END main  

下标法


.386  
.model flat,stdcall 
option casemap:none.data   
arrayD  DWORD 1000h, 2000h, 3000h,4000hExitProcess PROTO,dwExitCode:DWORD      .code  
main PROC   mov esi, 3  ;4000h的下标是3mov eax, arrayD[esi*4]  ;4表示每个元素是4字节,也可以用TYPE获取;EAX = 00004000INVOKE ExitProcess,0  
main ENDP   
END main  

http://www.yayakq.cn/news/205868/

相关文章:

  • 化州 网站建设云南省建设培训网站
  • 苏州市做网站大型网站技术架构 pdf
  • 教育网页设计网站网络建站免费网址
  • 加快网站打开速度分类信息网站织梦模板
  • 门户网站建设情况互联网公司上市
  • 正能量不良网站进入窗口免费阅读网络维护是什么工作
  • 做公司官网需要哪些技术天津seo培训班在哪里
  • 帮公司做网站怎么找大学生创新创业网站建设内容
  • 网站建设在线学习徐州注册公司流程和费用标准
  • 网站 规划方案书签制作过程
  • 换空间对网站排名的影响吗某网站搜索引擎优化
  • 安阳建设网站著名营销策划公司
  • 企业网站制作公司24小时接单wordpress alipay充值
  • 请简述网站建设的一般流程图网站建设合同注意
  • 外贸网站公司最好的科技网站建设
  • 免费的ppt下载网站江苏省建设厅网站公示
  • 用cms做的网站 的步骤网站建设需求确认书
  • seo网站优化推广费用低代码网站开发平台
  • 网站设计活动主题软文代发代理
  • php手机网站后台源码网站上广告
  • 做网站需要怎么样的服务器如何自己做网站并开发软件
  • 长春市快速建站网站为什么找别人做网站
  • flash网站制作教程个人网站要不要备案
  • 住房城乡建设部网站诚信平台贺州做网站
  • 加强网站政务服务建设方案永城城乡建设局网站
  • 关于协会网站建设的建议国外flash网站模板
  • 企业手机网站源码按颜色分类的网页设计欣赏网站
  • 汕头自助建站系统网站设计合同注意事项
  • 网站建设技术主管中兴建设 基金管理有限公司网站
  • 如何查看网站的更新频率国家企业营业执照查询