汇编中为什么将FFFFh写成0FFFFh的形式

大于9FFFh的十六进制数据A000H、A001H...FFFEH、FFFFH等,在书写的时候都是以字母开头的。而在汇编程序中,数据不能以字母开头,都要在前面加0。


原因:ANSI C规定标识符必须是有字母或下划线开头,随后跟字母、数字或下划线任意组合而成的字符序列。如果0ffffh不加0就是ffffh,若是不小心定义了一个标识符ffffh(这并不违反标识符定义规则,所以是合法的),这时候编译系统就会不清楚到底是将ffffh作为标识符处理,还是作为数字ffffh处理,这就会导致出错。即使加了h也不容易区分,因为h也是字符。


所以,为了区分标识符和数字,规定所有数字都不能以字母开头。


原文地址:点击打开链接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值