Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly xa汇编程序:16位立即数操作数_Assembly - Fatal编程技术网

Assembly xa汇编程序:16位立即数操作数

Assembly xa汇编程序:16位立即数操作数,assembly,Assembly,我试图使用xa来组装一些65816程序集,但当遇到16位立即数操作数时,它会抱怨溢出错误,例如 bit #$100 对于适合1字节的参数,这种情况不会发生,因此它显然是假设8位累加器而不是16位累加器。如何指示累加器应为16位?我正在使用-w开关启用65816操作码,但这没有帮助。在wla dx中,可以在操作码后面加上.w后缀,明确告诉它使用16位版本的操作码,但xa不明白这一点。更彻底地阅读xa手册页,可以发现这些伪操作: .as: Makes A register 8 bit .al:

我试图使用xa来组装一些65816程序集,但当遇到16位立即数操作数时,它会抱怨溢出错误,例如

bit #$100

对于适合1字节的参数,这种情况不会发生,因此它显然是假设8位累加器而不是16位累加器。如何指示累加器应为16位?我正在使用-w开关启用65816操作码,但这没有帮助。在wla dx中,可以在操作码后面加上.w后缀,明确告诉它使用16位版本的操作码,但xa不明白这一点。

更彻底地阅读xa手册页,可以发现这些伪操作:

.as: Makes A register  8 bit
.al: Makes A register 16 bit
.xs: Makes XY registers  8 bit
.xl: Makes XY registers 16 bit
因此,我通过在文件开头插入.al:.xl解决了这个问题