汇编语言中ptr的作用是什么

汇编语言中ptr的作用是什么... 汇编语言中ptr的作用是什么 展开
 我来答
百度网友4217d48
2019-07-07 · TA获得超过4221个赞
知道答主
回答量:17
采纳率:0%
帮助的人:4876
展开全部

ptr-pointer (既指针)得缩写。汇编里面ptr是规定的字(既保留字),是用来临时指定类型的。可以理解为,ptr是临时的类型转换,相当于C语言中的强制类型转换。

如 mov ax,bx ;  是把BX寄存器“里”的值赋予ax,由于二者都是寄存器,长度已定(word型),所以没有必要加“WORD”。

“mov ax,word ptr [bx];”是把内存地址等于“BX寄存器的值”的地方所存放的数据赋予ax。

由于只是给出一个内存地址,不知道希望赋予ax的,是byte还是word,所以可以用word明确指出;如果不用,(mov ax,[bx];)则在8086中是默认传递一个字,即两个字节给ax。

扩展资料

ptr也可以作为临时类型转换

(1)“cmp word ptr[si],'#'”是用si所指向的内存的连续两个字节与‘#’比较,要是改成cmp byte ptr[si],'#'那就是用si指向的那个存储单元的内容(一个字节)与‘#’比较了。

(2)“jmp near ptr opd”是无条件转移指令,转移到段内的标号opd所标识的位置(近类型)。若是“jmp far ptr opd”那就是转移到另外一个代码段的opd所标识的位置了(远类型)。

参考资料来源:百度百科-指针

和T217的距离
2010-12-28
知道答主
回答量:17
采纳率:0%
帮助的人:6.6万
展开全部
ptr应该就是pointer ,说明地址指针类型。
当两个操作数类型均不明确时,必须用byte ptr(字节属性)或Word ptr(字属性)将一个存储器操作数定义为字节或字类型。
如:
mov byte ptr [si],oah ;(指明[si] 为字节类型)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
万世流香
2010-12-28 · TA获得超过430个赞
知道答主
回答量:195
采纳率:0%
帮助的人:215万
展开全部
列举两种用法
MOV [BX] ,WORD PTR 10H; 立即数对内存单元赋值,两个类型都不明确
MOV BL, BYTE PTR NUM; 将内存字型数据取前一个字节数据
MOV BL, BYTE PTR NUM+1; 将内存字型数据取后一个字节数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2023-01-07 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部

x86 CPU 可以执行 16 位数的指令,也可以执行 8 位数的指令。

位数是多少?

在指令中,你如果不写清楚,CPU 就无法干活。

针对寄存器的指令,如:

  MOV CX,200、

  INC AL

寄存器的位数,就是非常清楚的。

--------

而,针对存储器的指令,如:

  MOV [BX],20H。

则有可能是一个字节、或两个字节的传送。。。

位数,不确定,CPU 就无法执行。

--------

那么,这条指令,就必须如下写:

 MOV BYTE PTR [BX],20H

 MOV WORD PTR [BX],20H

 MOV DWORD PTR [BX],20H

分别代表:8 位数、16 位数、32 位数的传送。 

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ljrlili
2010-12-28 · TA获得超过892个赞
知道小有建树答主
回答量:594
采纳率:50%
帮助的人:319万

参考资料: http://wenku.baidu.com/view/2972a8d4b9f3f90f76c61b76.html

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式