Assembly 在6502中添加两个16位整数以生成16位答案?
我需要添加两个16位整数,以使用绝对模式寻址生成16位答案。一、 但是,内存地址弄乱了,无法找出原因。请告知我如何更正代码:Assembly 在6502中添加两个16位整数以生成16位答案?,assembly,byte,addition,6502,Assembly,Byte,Addition,6502,我需要添加两个16位整数,以使用绝对模式寻址生成16位答案。一、 但是,内存地址弄乱了,无法找出原因。请告知我如何更正代码: x1 = $0410 y2 = $0411 s1 = $0412 Start at $0500 CLC 18 LDA x1 AD 10 04 ADC y1 6D 11 04 STA s1 8D 12 04 LDA x1+1 AD 11 04 ADC y2
x1 = $0410
y2 = $0411
s1 = $0412
Start at $0500
CLC 18
LDA x1 AD 10 04
ADC y1 6D 11 04
STA s1 8D 12 04
LDA x1+1 AD 11 04
ADC y2+1 6D 12 04
STA s1+1 8D 13 04
BRK 00
由于16位整数需要两个字节,因此位置重叠。您需要将它们隔开两个字节:
x1 = $0410
y2 = $0412
s1 = $0414
所以我必须把x1+1,y2+1和s1+1的高位字节改为12,13和14?高位字节?它们都只有一个字节,所以这没有任何意义。编辑的答案让它更清晰。哦,我明白了。。。这会使它看起来像编辑过的版本,对吗?是的,它现在应该可以工作了。但请不要更正问题中的代码,因为它不再与问题对应。