Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
04/16/08 14:46
Read: times


 
#153486 - How to get ABC
Responding to: ???'s previous message
Your assembler must calculate ABC.

Take the absolute value of the jump-to address, and isolate address bits a10, a9, and a8. These are abc.

I presume that you have a two pass assembler. The first pass calculates the absolute addresses for the labels, and stores them in a table. If the destination is hard wired, it too should be stored in the table. You might consider assigning it a temporary name.

On your second pass, isolate the destination address bits, and use them to create the opcode. You should also look for and flag the error of the jump being out of the current page.


List of 42 messages in thread
TopicAuthorDate
Problem with ACALL instruction            01/01/70 00:00      
   It is an absolute paged call...            01/01/70 00:00      
      my question is different            01/01/70 00:00      
         The Opcode is Selected...            01/01/70 00:00      
   not using an assembler?            01/01/70 00:00      
      still confused...            01/01/70 00:00      
         Not possible, use LCALL            01/01/70 00:00      
            Why should anyone WANT to know the hex            01/01/70 00:00      
               he'd want to know it because ...            01/01/70 00:00      
                  Unnecessary complication            01/01/70 00:00      
         compiler results error            01/01/70 00:00      
            There is no compiler involved. Just an assembler.            01/01/70 00:00      
         3 top bits of 11-bit address            01/01/70 00:00      
            only good for calls within the same 2K block            01/01/70 00:00      
            one more question...            01/01/70 00:00      
               Read your instruction set            01/01/70 00:00      
                  i am making an assembler.            01/01/70 00:00      
                     Now I understand. Far more interesting.            01/01/70 00:00      
                        Absolute Assembler            01/01/70 00:00      
                           what is an absolute assembler            01/01/70 00:00      
                              Which do you love.            01/01/70 00:00      
                                 actually I didn't            01/01/70 00:00      
                                    Linking assemblers are more complicated            01/01/70 00:00      
                     why not?            01/01/70 00:00      
               ajmp            01/01/70 00:00      
                  Reconsider Robert....            01/01/70 00:00      
                     positive offset...            01/01/70 00:00      
                        No !!!            01/01/70 00:00      
                           let's try this way            01/01/70 00:00      
                              abc?            01/01/70 00:00      
                                 I do not know how micro            01/01/70 00:00      
                                    can any1 tell abc??            01/01/70 00:00      
                                       As easy as 'abc'            01/01/70 00:00      
                                       How to get ABC            01/01/70 00:00      
                           whats the operand here?            01/01/70 00:00      
                              neither!!!!            01/01/70 00:00      
                                 is that an error?            01/01/70 00:00      
                                    error, not necessarily, but ..            01/01/70 00:00      
                                    it is not an error, but it is poor practice            01/01/70 00:00      
                        Not offset            01/01/70 00:00      
                           Oops, I was wrong earlier            01/01/70 00:00      
   Problem solved            01/01/70 00:00      

Back to Subject List