Tuesday 18 December 2012

MIPS Simulator: Data Representation


Untuk memahami cara memanipulasi data dan melaksanakan pengiraan dalam MIPS program, kita hendaklah mengetahui bagaimana data diwakili oleh komputer dalam pandangan bahasa pengaturcaraan MIPS.

Character Representation


-          1 Byte = 8 bit
-          Satu character  boleh diwakili dengan 1 byte.
-          Contoh:
.asciiz                    “ABC abc”

According to the ASCII TABLE , the bit patterns that the assemble will produce in the object module:
                                41  42  43  20  61  62  63  00

-          nombor-nombor ini mewakili hexadecimal system.
-          Kita juga boleh letak 0x di depan nombor-nombor ini untuk menunjukkan nombor-nombor ini adalah hexadecimal system .
Explanation for the solution:
-          Merujuk kepada ASCII TABLE , lajur (Hex), character pertama ,“A”, sepadan dengan bit pattern  0x41.
-          character kedua , “B”, sepadan dengan bit pattern  0x42.
-          Character  “C”, sepadan dengan bit pattern 0x43.
-          Character , “ ” (space), sepadan dengan bit pattern 0x20.
-          Character ,“a”, sepadan dengan bit pattern 0x61
-          Character , “b”, sepadan dengan bit pattern 0x62
-          Character , “c”, sepadan dengan bit pattern 0x63
-          Bit pattern yang terakhir adalah 0x00(NUL) , ia digunakan untuk menunjukkan end of string of characters (akhir rentetan watak).

-          Cara untuk tulis bit pattern dalam decimal system juga adalah sama. Cuma kita merujuk kepada lajur (Dec).

-          An alternative way to write each character:


            “A “  “B”   “C”  “(space)”  “a”   “b”    “c” “(NUL)”
.byte    65     66     67        32         97     98     99      00 

-          Eg:
.asciiz                    Z@6 J#)

Solution:
Hexadecimal:     5A  40  36  20  4A  23  29  00
Decimal:  .byte  90  64  54  32  74  35  41  00





Number Representation

-          komputer beroperasi pada binary numbers.
-          Dalam MIPS, nombor adalah diwakili dalm decimal system atau hexadecimal system.
-          Apabila kita hendak memasukkan nombor ke dalam register,kita perlu ingat jenis number system yang kita nak tulis dalam program tersebut.
-          Contohnya :
To load 20 into $5, kita ada dua cara untuk mewakili decimal 20 dalam MIPS:
1. ori $5, $0, 20                  #load number 20 into $5
2. ori $5, $0, 0x14              # load number 20 into $5                              16|20
§                                                                                        1 – 4

-          Eg:
Load 165 into $5
Solution:
1. ori $5, $0, 165                #load number 165 into $5
2. ori $5, $0, 0xA5             #load number 165 into $5                             16|165
                                                                                                                       10 – 5   ,where 10 = A 

No comments:

Post a Comment