views:

99

answers:

1

i m taking exam in 8 hrs...plese there are somethings i need to make sure that i uderstand properly before my MC68000 exam.

question--- Write the following values in the memory lacations below, as the microprocessor would store them as bits or hex starting at address $8000

A

2AC543 ---- for this one do i have to add two 00 in the front right?

5863a04 ------do i have to add one 0 in the front?

5D4 ------add another 0 right?

AD

BC123 -----add three 0's right?

C

F2

1B4D890378 --- not sure about this part.....

this how i did it

$8000 0A | 00

$8002 2A | C5

???

A: 

The m68k is big endian which means that the leftmost/first value is the highest order. So 0x2AC543 becomes

$8000 0x00 0x2A 0xC5 0x43

The interesting question for 0x5D4 is: Will it be stored as 16 or 32 bit integer? The m68k can do both, so either 0x00 0x00 0x05 0xD4 and 0x5 0xD4 could be correct.

1B.4D89.0378 is obviously too big to store in 32 bits. If you use two long registers for it, you'll get

$8000 00 00 00 1B   4D 89 03 78

again: the highest order value comes first.

Aaron Digulla
Thanks so what about 1B4D890378? how do i store that one...?
kIngcross
Oh thank very much...so thats means that it will only store up to 00 00 00 1B 4D 89 ? then 03 78 will not fit in
kIngcross
No, since 00 00 00 1B 4D 89 is too big to fit into a single CPU register. Just count the bits. When you reach 32, then the register is full. The CPU doesn't care whether a bit is 0 or 1; both count the same.
Aaron Digulla