Как обрезать пробелы в конце строки в Мари? - PullRequest
0 голосов
/ 05 сентября 2018

Привет, я новичок в языке программирования 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

Любая помощь будет оценена спасибо!

...