Posted 18 Jul 2018 How do I stop a MOVD wraparound. I want to move1 digit from right to left. As: 0001 0012 0123 1234 not 1230 Share this post Link to post Share on other sites
Posted 18 Jul 2018 USE SLD SLD(074) shifts data between St and E by one digit (4 bits) to the left. “0” is placed in the rightmost digit (bits 3 to 0 of St), and the content of the leftmost digit (bits 15 to 12 of E) is lost. Put 1234 in St and use ST+1 to view your data. 1 person likes this Share this post Link to post Share on other sites
Posted 19 Jul 2018 Thanks for that Jay. The problem is I have four data registers and I need to move a specific digit from each of them into a specific data word consecutively. Share this post Link to post Share on other sites
Posted 19 Jul 2018 I thought you could use MOVD to move digit 2 to digit 4 in another word and so on. Just have to do one at a time? I also thought you could use MOVB to move multiple bits in the same way? Have not used either for many years so not sure but worth a look? Share this post Link to post Share on other sites