注册 登录
编程论坛 汇编论坛

指点迷惑

xufeng917 发布于 2006-12-10 14:34, 743 次点击

有这样的代码:
......
SGHI: EQU 05BH
mov AL 00H;
mov SGHI AL;
......

我不理解 SGHI: EQU 05BH
中为什么带一个冒号啊?
EQU 定义时 不是不要 冒号吗?
谁能说说代码中的一些标号 带冒号 与不带冒号的区别吗?
多谢
-----------------汇编初学习者

5 回复
#2
菜鸟上路2006-12-10 15:30
有这种用法吗?
我试的时候报错了
#3
lefttime2006-12-10 16:23

伪操作前是不能用标号的,只能用变量名;符号定义EQU也不例外!
在汇编中带冒号表示这是一个标号,用于选择、循环、跳转的目的操作数调用;
不带冒号的表示这是一个变量,例如符号常量、段名、地址...
我们经常用的数据段、代码段、子程序、宏前面的不就是最常见的么:
例如
DATA SEGMENT
......
DATA ENDS
......
CODE SEGMENT
......
CODE ENDS
......
DATA、 CODE就是变量名,我们可以用任意字符代替。
还有楼主的代码错误多多啊:
冒号的错误已经出现,还有最基本的双操作数格式---操作数必须用逗号隔开,而且所有双操作数指令中除了I/O操作的目的操作数可以是立即数,其它可不行的!(用符号定义后的变量就是一个常量,调用它是编译器会认为它是个数值)

#4
xufeng9172006-12-11 22:19

谢谢 三楼

初学的
是的 少了逗号
这几句命令 是看教材上的
教材上举的例子 就带冒号
哦原来不带啊

#5
xufeng9172006-12-11 22:20
我看的是 周明德 微机原理 4版本
买的正版本的啊 怎么 错的这么多
本来我就不会 。。。
这样一来
#6
senyee2006-12-11 23:06
不要完全相信书上的哦~~
在机子上调试下就知道了~~
1