嗨,我是Marie编程语言的新手,我有一个地址为NameAddr的字符串。
我的打印子程序在到达0字符(标记字符串的结尾)时停止打印。因此要修剪空白,我只是从最后一个字符的地址向后迭代,只要替换了空白带有0。
但是,我的removeSpace子例程不会终止,并且当我逐步执行它时,在传递完最后一个字符的地址后,它没有正确更新LastCharAddr吗?
//Remove spaces
LastCharAddr, HEX 0
RemoveSpace, HEX 0
Space, DEC 32 //constant needed for subroutine
CharacterReplace, Hex 000 //constant for subroutine
StartRemoveSpace, LoadI LastCharAddr
Subt Space
Skipcond 400 //If its a space
JumpI RemoveSpace //if not a space terminate
Load CharacterReplace //replace with 0
Store LastCharAddr //Replace
Load LastCharAddr
Subt One// iterate backwards
Store LastCharAddr
Jump StartRemoveSpace
任何帮助将不胜感激!