当前位置:编程学习 > 汇编语言 >>

汇编语言 16位的 mov si,0ffffh 寄存器只有16位,这句不会溢出吗?

答案:呵呵,好多朋友刚开始接触时都有这个疑问,其实0ffffh前面这个0是作为一个区分16进制和一般符号的标志。也就是说,如果一个16进制数据的最左边这个数是A~F的数,则应该在其左边再加一个0,以区分汇编语言其它符号(比如定义的变量或符号常量)。而数据的实际大小是0右边的数确定。 如果不加这个0,反而是错误的了。因为此时的ffffh到底是数据还是符号,汇编语言自己是不知道的,所以在定义符号是有一条规定不能以数字开头,也许就是为了这个吧!
其他:0FFFFH,实际上,它就是16位数。它只有四个 F。 

即使数字过大,也不叫溢出。 

上一个:lingo里怎么表示正取0,负取1
下一个:关于JS,一个奇怪的问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,