Question

A list of numbers (in hexa) is stored in the memory location range of (0000 –...

A list of numbers (in hexa) is stored in the memory location range of (0000 – 00FF), we need to subtract $04 from each number of the list. Solve this problem using assembly language, use the Indexed addressing in writing of your program. Store the result of subtracting each number in the same memory location.

0 0
Add a comment Improve this question Transcribed image text
Answer #1

mov si,00                             ;;Giving the initial memory location to 0

mov bl,04h                          ;;bl = 4 constant value to subtract

mov cx,00FFh    ;;cx is counter register cx = FF

back:

    mov al,[si]       ;;Moving element in the memory block to al

    sub al,bl           ;;al = ab-4

    mov [si], al;;Storing the result back in memory location

   

    inc si                  ;;incrementing the memory location

    loop back         ;;looping back to start of the loop

hlt                                                           ;;End of the program.

Add a comment
Know the answer?
Add Answer to:
A list of numbers (in hexa) is stored in the memory location range of (0000 –...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Write a program in assembly language that loads register R2 with the word in memory location...

    Write a program in assembly language that loads register R2 with the word in memory location which is 10 bytes above the address in R0; and loads register R3 with the word in memory location which is 10 bytes below the address in R1. Your program must compare the two numbers in R2 and R3. If number in R2 is less than or equal to the number in R3 it must add the two numbers and save the result in...

  • .Assume: We are using a CPU12 as a coffee maker controller. An ADC provides the temperature of the water in °C at memory location $0067. Writing $01 to memory location $0068 turns the coffee maker he...

    .Assume: We are using a CPU12 as a coffee maker controller. An ADC provides the temperature of the water in °C at memory location $0067. Writing $01 to memory location $0068 turns the coffee maker heating element on. Writing $00 to memory location $0068 turns the heating element off. Write an assembly-language program that loops continually and: Turns the heating element on when the temperature falls below 90 °C Turns the heating element off when the temperature reaches 100 °C...

  • Write a program that will add two numbers stored in memory (you can write any values...

    Write a program that will add two numbers stored in memory (you can write any values in any section of memory you like). Subtracts 2 from that number, then displays the result to the screen before moving the result to memory for long term storage. Include memory map, instructions and a data example to show that it works. Create this by using the following list of instruction

  • Write a program using PIC24 instructions yo add three 8-bit numbers stored in the successive memory...

    Write a program using PIC24 instructions yo add three 8-bit numbers stored in the successive memory locations starting from 0x0800. Store the result in the memory lpcation 0x0855.

  • . Write an 8086 assembly language program to find the prime numbers among 100 bytes of...

    . Write an 8086 assembly language program to find the prime numbers among 100 bytes of data in an array stored from the address 4000H: 1000H in the data segment and store the result from the address 4000H: 3000H. write the code using 8086 assembly language only i do not want any other language If you Do not sure please do not solve it

  • I am having an issue with this practice problem. I understand the concept of given step,...

    I am having an issue with this practice problem. I understand the concept of given step, but I am lost to figure out how to setup in the main program in CodeWarrior software. Using the HCS12 Microcontrollers and Embedded Systems, 1st Edition, I was able to understand the instruction appendix, but I was not able to construct it in the main program. I need help to solve these steps and it is due today. Modify the Main program section of...

  • Please answer the list questions above with explanation. Thank you LOAD-STORE PROGRAM EXAMPLE Write an Assembly...

    Please answer the list questions above with explanation. Thank you LOAD-STORE PROGRAM EXAMPLE Write an Assembly program to add two 8-bit numbers. C A+B lds r16, A lds rl7, B : 1. Load variables add E16, :172 Do something 2. Do something sts C, r16 : 3. Store answer Identify the operation, source operand, destination operand in the first Data Transfer insiruction. Identify the source/destination operand in the Arithmetic and Logic (ALU) instruction. .What addressing mode is used by the...

  • Let’s say that we have a 4-way set associative cache. The cache has 16 sets in...

    Let’s say that we have a 4-way set associative cache. The cache has 16 sets in total. Main memory consists of 16K blocks of 16 words each, and word addressing is used. a. Show the address format that is used to map main memory address to the cache. Include the appropriate fields and their sizes. For the remaining questions, assume that we have the following situation: We have a program that loops 6 times from location 1209810 in memory to...

  • 3. (Dynamic Array) In C++, the largest int value is 2147483647. So. an integer larger than this cannot be stored and pr...

    3. (Dynamic Array) In C++, the largest int value is 2147483647. So. an integer larger than this cannot be stored and processed as an integer. Similarly, if the sum or product of two positive integers is greater than 2147483647, the result will be incorrect. One way to store and manipulate large integers is to store each individual digit of the number in an array. Your program must, at least, contain a function to read and store a number into an...

  • (c.) What is an assembler language and what are the advantages of using one in comparison...

    (c.) What is an assembler language and what are the advantages of using one in comparison to machine code? (6 marks) (d.)The Little Man model of a computer system uses a single-digit op-code and 2-digit memory addressing and has the following instructions defined where the address portion is shown as Op. Code Description 1xx 2xx Add value in memory to accumulator Subtract value in memo Store accumulator value to memo Load value in memory to accumulator Branch to memory location...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT