Answer to Question #218005 in Algorithms for Chuzzy

Question #218005

In a microcomputer, the addresses of memory locations are binary numbers that identify each memory circuit where a byte is stored. The number of bits that make up an address depends on how many memory locations there are. Since the number of bits can be very large, the addresses are often specified in hex instead of binary. i. If a microcomputer uses a 20-bit address, how many different memory locations are there? ii. How many hex digits are needed to represent the address of a memory location there? iii. What is the hex address of the 255th memory location? (Note: The first address is always 0) iv. The computer program is stored in the lowest 2kbyte block of memory. Give the start and end address of this block.


1
Expert's answer
2021-07-19T00:35:39-0400

Facts about the address bus:

  • Address bus transfers only address to memory.
  • Each location has unique address.
  • The number of bits in address lines be n, then the number of memory locations will be "2^n" .

i) For the given micro-computer, the number of addresses bits (n)=20

So, number of memory locations "=2^{20}"

ii)

For, Hex-bits "0x00000 - 0xFFFFF = 1M (1024^2)" address

DX = 0x0800

DS = 0x1000

Hence, we can conclude that it will be 5.

iii) The required memory location will be

DX = 0x0800

DS = 0x1000


iv) The size of the block address = 2kbytes blocks of memory

Starting address = Ending address - Offset

Ending address = Starting address + Offset

"2kb= 2\\times 1 kb"

"=2\\times 1024\\times 8"

"=2^{11}\\times 8"

So, offset =07FFH

Here ending address is not mentioned, so without it, we can not determine.


Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
APPROVED BY CLIENTS