1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Assembly language. conversion.

  1. Mar 17, 2009 #1
    Assembly language. how to change the 80h in my register to 50h?
    that goes to others to. like 45h to 2Dh.

    basically, i came up with a sequence to change the user's double digit decimal input to hex value.

    i.e.
    when i enter 45, AL = 45h
    how do i change it to 2Dh??

    ; al = 45h. how to change it to 2Dh?


    45(decimal) = 2Dh.
    must be able to do this for other conversion.
     
  2. jcsd
  3. Mar 18, 2009 #2

    MATLABdude

    User Avatar
    Science Advisor

    I'm not quite sure if I completely understand your question, but wouldn't the user's input in this case be two ASCII bytes? (The ASCII characters for '4'--0x34, and '5'--0x35) Unless you've already parsed these by ANDing with 0xf0)

    If that's the case, you can simply multiply the first byte by 10, and add it to the second byte. Simple base 10 long form, as you probably did in elementary. In this case, 4 x 10 is 40 is 0x28 and when you add 5 to it, you get 0x2d, as in your example. If instead, it's packed into one byte, you'll need to do some masking and shifting before multiplying the 10s digit by 10 and adding it to the 1s digit.

    The actual implementation is left as a task to the user.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Assembly language. conversion.
  1. Assembly Language (Replies: 0)

  2. Assembly Language (Replies: 13)

Loading...