What is memory bank? How 8086 can access the 16-bit word under the following condition? Discuss with diagram :

(i) When low byte at an odd address

(ii) When low byte at an even address

Subject Microprocessor and Assembly Language
NU Year Set: 2.(d) Marks: 6 Year: 2009

A memory bank is logical storage within computer memory that is used for storing and retrieving frequently used data. It can be a part of standard RAM or the cache memory used for easily accessing and retrieving program and standard data.

The 8086 is a 16-bit processor.

Because the word size is limited to 16-bits, many data types in C have different sizes then they do on the spice machines or modern PCs. Below is a list of C data types and their sizes.

   Type          | Length  | Range
  ---------------|---------|-----------------------------------------
   unsigned char |  8 bits |                 0 to 255
   char          |  8 bits |              -128 to 127
   enum          | 16 bits |           -32,768 to 32,767
   unsigned int  | 16 bits |                 0 to 65,535
   short int     | 16 bits |           -32,768 to 32,767
   int           | 16 bits |           -32,768 to 32,767
   unsigned long | 32 bits |                 0 to 4,294,967,295
   long          | 32 bits |    -2,147,483,648 to 2,147,483,647

Most importantly, note the range limitation on the int data type. It is also important to realize that any operations on 32-bit data types (long and unsigned long) require from several to very many instructions to perform operations. 32-bit operations in C should be avoided unless absolutely necessary.

The following names are used to refer to data sizes on the 8086:

   Length | Size Name
  --------|-----------------------
   4-bit  | nibble
   8-bit  | byte
   16-bit | word
   32-bit | dword (or doubleword)
Login to post your comment.