#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2009
    Posts
    1
    Rep Power
    0

    Effective memory address calculation


    What is the effective address generated by each of the following instruction?

    Initially BX=0x0100, label=0x0234, [label]=0x0010, and SI=0x00E1

    (Offsets in part a, b and f are in decimal)

    1. mov ax, [bx+40]
    answer:
    0x0140

    2. mov ax, [bx+20]
    answer:
    0x0160

    3. mov ax, [bx+label]
    answer:
    0x0394

    4. mov ax, [label+bx]
    answer:
    0x0404

    5. mov ax, [bx+si]
    answer:
    0x0475

    6. mov ax, [si+25]
    answer:
    0x0106

    Kindly check my answers, please point out the mistakes and tell me by an example how to do these.
  2. #2
  3. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2010
    Posts
    1
    Rep Power
    0

    Post Check this assembly program


    [org 0x0100]
    mov al, [num1]
    mov bl, [num1+1]
    mov bl, [num1+2]
    add al, bl
    mov ax, 0x4c00
    int 0x21


    num1: db 5, 10, 15, 0


    After analysis you have to provide all information that is asked under:

    al,bl and IP Register

    You have to fill the table given below and write the values of al,bl and IP registers before and after execution of an instruction as you analyze in debugger. You also have to give reason that why the value of al,bl and IP registers change after a particular instruction. Give reason in corresponding column.

    Instruction Before Execution After Execution(with Reasons)
    Value of al Value of bl Value of IP Value of al Value of bl Value of IP
    mov al,[num1]
    0000 0000 0100 0005 0000 0103
    mov bl,[num1+1]
    0005 0000 0103 0005 000A 0107
    add al,bl
    0005 000A 0107 000F 000A 0109
    mov bl,[num1+2]
    000F 000A 0109 000F 000F 010D
    add al,bl
    000F 000F 010D 001E 000F 010F
    mov [num1+3],al
    001E 000F 010F 001E 000F 0112





    You also have to provide the following information

    Address of num1=0117
    Address of num1+1=0118
    Address of num1+2=0119
    Address of num1+3=011A
    Value of num1+3(at end of program) =?

IMN logo majestic logo threadwatch logo seochat tools logo