Tải bản đầy đủ (.doc) (4 trang)

BÀI TẬP KIẾN TRÚC MÁY TÍNH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (118.82 KB, 4 trang )

BÀI TẬP KIẾN TRÚC MÁY TÍNH
1. Số nhị phân 8 bit (11010101) tương ứng với số nguyên thập
phân có dấu là bao nhiêu trong các phép biểu diễn số có dấu
sau đây:
• Dấu và trị tuyệt đối.
• Số bù 1.
• Số bù 2.
• Số thừa K=128
Giải:
+ Dấu và trị tuyệt đối:
d
7
d
6
d
5
d
4
d
3
d
2
d
1
d
0
1 1 0 1 0 1 0 1
Bit dấu d
7
=1 thể hiện dấu trừ.
Các bit d


0
d
1
d
2
d
3
d
4
d
5
d
6
cho giá trị tuyệt đối tương ứng với số nguyên thập phân là:
(-1)
1
*(1*2
0
+0*2
1
+1*2
2
+0*2
3
+1*2
4
+0*2
5
+1*2
6

)= - 85
10
Kết quả: -85
10
+ số bù 1:
Số 11010101
2
lấy số bù 1 ta được: (00101010)
2
= +42
10
Kết quả: +42
10
+ Số bù 2:
Ta có số: 11010101
2

Lấy số bù 1: 00101010
2
Sau đó cộng thêm 1: + 00000001
2
Ta được: 00101011
2
= +43
10
Kết quả: +43
10
+ Số thừa K = 128:
85
10

=128+85
10
01010101
2
= 10000000 + 01010101
2
= 11010101
2
Lấy bù 1 của 11010100
2
ta được: 00101010
2
Cộng thêm 1: +00000001
2
Ta được: 00101011
2
= + 43
10
Kết quả: +43
10
Họ và tên: Nguyễn Thị Hồng Diễm
MSSV: 1080263
Lớp: Sư Phạm Lý - Tin K34
2. Cho số nguyên -65, biểu diễn số nguyên dưới dạng nhị phân 8
bit trong các phép biểu diễn sau:
• Dấu và trị tuyệt đối.
• Số bù 1.
• Số bù 2.
• Số thừa K=128
Giải:

+ Dấu và trị tuyệt đối:
65/2 = 32 dư 1
32/2 = 16 dư 0
16/2 = 8 dư 0
8/2 = 4 dư 0
4/2 = 2 dư 0
2/2 = 1 dư 0
1/2 = 0 dư 1
Do số âm nên bit dấu có giá trị 1. Do đó: - 65
10
=11000001
2
Kết quả: - 65
10
= 11000001
2
+ Số bù 1:
Ta có : +65
10
=01000001
2
Lấy bù 1 : -65
10
=10111110
2
Kết quả: 10111110
2
+ Số bù 2:
Ta có số âm: +65
10

=01000001
2
Lấy bù 1: =10111110
2
Sau đó cộng thêm 1: +00000001
2
Ta được số dương: -65
10
= 10111111
2
Kết quả: 10111111
2
+ Số thừa K:
65
10
=128
10
+65
10
=10000000
2
+01000001
2
=11000001
2
Lấy bù 1 : 00111110
2
Cộng 1 : 00000001
2


00111111
2
Kết quả là : -65 =00111111
2

3. Đổi các số sau đây:
• 010010 > số thập phân.
• 1050 > Số nhị phân.
• 20.875 > số nhị phân.
• -2010 > số nhị phân 16 bits.
Giải:
 010010
2
→ số thập phân:
010010
2
= 0*2
0
+1*2
1
+0*2
2
+0*2
3
+1*2
4
+0*2
5
= 18
10

Kết quả: 18
10
 1050 (sang số nhị phân)
1050/2 = 525 dư 0 16/2 = 8 dư 0
525/2 = 262 dư 1 8/2 = 4 dư 0
262/2 = 131 dư 0 4/2 = 2 dư 0
131/2 = 65 dư 1 2/2 = 1 dư 0
65/2 = 32 dư 1 1/2 = 0 dư 1
32/2 = 16 dư 0
Kết quả: 1050
10
= 10000011010
2
 20.875 (sang số nhị phân)
Phần nguyên 20
10
: Ta sẽ đổi phần nguyên dùng phương thức số dư:
20/2 = 0 dư 0
10/2 = 5 dư 0
5/2 = 2 dư 1
2/2 = 1 dư 0
1/2 = 0 dư 1
⇒ 20
10
= 10100
2
Phần lẻ .875: Dùng phương thức nhân biến đổi phần lẻ của số thập phân sang số
nhị phân:
.875*2 = 1.75  1
.75*2 = 1.5  1 111

2
.5*2 = 1  1
⇒10100.111
2
Kết quả: 10100.111
2
 -2010 (sang số nhị phân 16 bit)
Thực hiện tương tự ta được: 2010
10
= 0000 0011 1111 1010
2
⇒ -2010
10
= 1000 0011 1111 1010
2
Kết quả: 1000 0011 1111 1010
2
4. Biểu diễn các số thực dưới đây bằng số có dấu chấm động
chính xác đơn 32 bit.
• 135.75
• -581.675
• 1150.6875
• -11257.125
Giải:
 135.75
• Bước 1: Đổi số 135.75
10
sang số nhị phân: 135.75
10
= 10000111.11

2
• Bước 2: Chuẩn hóa : = 10000111.11
2
= 1.000011111
2
×2
7

= (-1)
S
× (1.f
1
f
2
…f
23
)×2
(E-127)
= 0 (1bit)
 S = 0
10
• Bước 3: Điền các bit vào các trường theo chuẩn:
Số dương : Bit dấu S có giá trị 0
Phần mũ E với số thừa K=127, ta có: E - 127= 7
=>E=127+7 = 134
10
= 10000110
2
(8 bit)
f = 000011111

2
= 000 0111 1100 0000 0000 0000
2
(23bit)
Kết quả: 0 1000 0110 0000 1111 1000 0000 0000 000
2
 -581.675
-581.675
10
= -1001000101.101
2
= -1.001000101101x2
9
=(-1)
S
× (1.f
1
f
2
…f
23
)× 2
(E-127)
Do -581.675 âm nên S = 1
10
= 1 (1 bit)
E = 127+9 = 136
10
= 10001000
2

(8 bit)
f =0010 0010 1101 0000 0000 000
2
(23 bit)
Kết quả: 1 10001000 0010 0010 1101 0000 0000 000
2

 1150.6875
1150.6875
10
= 10001111110.1101
2
= 1.00011111101101 × 2
10
= (-1)
S
×(1. f
1
f
2
…f
23
)×2
(E-127)
 S = 0
10
= 0 (1 bit)
E = 127 + 10 = 137
10
= 10001001

2
(8 bit)
f = 00011111101101
2
=00011111101101000000000
2
(23 bit)
Kết quả: 01000100100011111101101000000000
2
 11257.125
11257.125
10
= 10101111111001.001
2
= 1. 0101111111001001
2
×2
13
= (-1)
S
× (1. f
1
f
2
…f
23
)×2
(E-127)
Do -11257.125 âm nên S = 1
10

= 1 (1 bit)
E = 127+13=140 = 10001100
2
(8 bit)
f = 0101111111001001 = 01011111110010010000000
2
(23 bit)
Kết quả:11000110001011111110010010000000
2



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×