A byte addressable memory system has 16-bit addresses. How many bytes does it contain?

2^16

16

16 x 8

16^2

16^16

 

 

A word-addressable memory system has 32-bit addresses. How many bytes does it contain?

2^32

2^34

2^36

32^32

32^2

 

 

On a big-endian system, what is the value the load returns?

STORE.W 0x100, 0x01020304
LOAD.B 0x101

 

0x02

0x01

0x03

0x04

0x30

0x10

0x20

0x40

0x01020304

0x0102

0x0304

 

On a little-endian system, what is the value the load returns?

STORE.W 0x100, 0x01020304
LOAD.B 0x101

 

0x03

0x01

0x02

0x04

0x30

0x10

0x20

0x40

0x01020304

0x0102

0x0304

 

On a big-endian system, what is the value the load returns?

STORE.W 0x100, 0x11223344
LOAD.H 0x102

 

0x3344

0x1122

0x2233

0x1133

0x2244

 

 

On a little-endian system, what is the value the load returns?

STORE.W 0x100, 0x11223344
LOAD.H 0x102

 

0x1122

0x3344

0x2233

0x1133

0x2244

 

 

On a big-endian system, what is the value the load returns?

STORE.W 0x100, 0x11223344
LOAD.W 0x100

0x11223344

0x44332211

0x12341234

0x22114433

 

 

On a little-endian system, what is the value the load returns?

STORE.W 0x100, 0x11223344
LOAD.W 0x100

0x11223344

0x44332211

0x12341234

0x22114433

 

 

The following load returns 0xabcd1234. For a big-endian system, what is the value at address 0x202?

LOAD.W 0x200

0x12

0xab

0xcd

0x34

Cannot tell

 

 

The following load returns 0xabcd1234. For a little-endian system, what is the value at address 0x202?

LOAD.W 0x200

0xcd

0x12

0xab

0x34

Cannot tell

 

On a big-endian system, what value the load returns?

 

STORE.H 0x300, 0xabcd
STORE.H 0x302, 0x1234
LOAD.W 0x300

 

0xabcd1234

0x1234abcd

0x3412cdab

0xcdab3412

0xabcd

0x1234

 

 

On a little-endian system, what value the load returns?

 

STORE.H 0x300, 0xabcd
STORE.H 0x302, 0x1234
LOAD.W 0x300

 

0x1234abcd

0xabcd1234

0x3412cdab

0xcdab3412

0xabcd

0x1234

 

 

On a big-endian system, what is the value the load returns?

 

STORE.B 16, 16
STORE B. 17, 10
STORE.B 18, 18
STORE.B 19, 5
LOAD.W 16

0x100a1205

0x16101805

0x05081016

0x05120a10

370153478

 

 

Which memory accesses will be aligned on NIOS II?

Is the NIOS II memory access aligned?

LOAD.B 0x1010
LOAD B. 0x2011
LOAD.B 0x123A
LOAD.B 0xABCDF
STORE.H 0x1010
STORE.H 0x2013
STORE.H 0xABCD
STORE.H 0XEEEA
STORE.H 0xFFFFFFF
LOAD.W 0xffffc
LOAD.W 0x1238
LOAD.W 8194
LOAD.W 8192
LOAD.H 65535
LOAD.H 65536

 

 

What is the value LOAD.W 0x1000c returns if memory has the following contents?

 

Address

+0

+4

+8

+12

0x10000

0x10234578

0x32ffaabb

0x0676ab73

0x12346578

0x10010

0xa8001122

0xb3d4f6e7

0x11111111

0x02

 

0x12346578
0x0676ab73
0x32ffaabb
0xa8001122
0xb3d4f6e7
0x11111111

 

What is the value LOAD.B 0x10010 returns if a little-endian memory has the following contents?

 

Address

+0

+4

+8

+12

0x10000

0x10234578

0x32ffaabb

0x0676ab73

0x12346578

0x10010

0xa8001122

0xb3d4f6e7

0x11111111

0x02

 

0x22
0xa8
0x00
0x11
0x10

 

What is the value LOAD.B 0x10010 returns if a big-endian memory has the following contents?

 

Address

+0

+4

+8

+12

0x10000

0x10234578

0x32ffaabb

0x0676ab73

0x12346578

0x10010

0xa8001122

0xb3d4f6e7

0x11111111

0x02

 

0x01
0xa8
0x22
0x00
0x11
0x10