Được gửi bởi
Neo
Đổi cơ số mà ngồi chia 2 liên tục, lấy ngược thì xỉn luôn.
Để đổi cơ số nhanh thập phân->nhị phân ta thực hiện như sau:
1. Phân tích số thập phân thành tổng của 1,2,4,8,16,32,64,128
2. Đọc nhẩm “một, hai, bốn, tám, mười sáu, ba hai, sáu tư, một trăm hai mươi tám”
3. Viết từ phải sang trái 1 nếu số đọc & số tính trùng nhau, 0 nếu ko có.
Ví dụ:
155= 128+16+8+2+1
Đọc ‘một’ viết 1, ‘hai’ - 2, ‘bốn’ viết 0, ‘tám’ - 1, ‘mười sáu’-1, ‘ba hai’-0, ‘sáu tư ‘-0, ‘một hai tám’-1 lần lượt từ phải sang ta được số sau: 10011011
Nhị phân->thập phân:
1. Ứng với mỗi lần đọc như trên ta dò từ phải sang trái xem nếu là 1 thì viết ra số vừa đọc.
2. Lấy tổng chuỗi số vừa đọc.
Ví dụ: 10110101
Ta đọc ‘một’ viết 1, hai-không viết, ‘bốn’ viết 4, tám- không viết, ‘mười sáu’ – 16, ‘ba hai’-32, sáu tư-không viết, ‘một hai tám’ viết 1.
10110101=1+4+16+32+128=181
Quá dễ phải ko nè.
Trở lại bài toán, công ty có 5 chi nhánh, ta xem mỗi chi nhánh là 1 subnet,
Ta đếm một, hai, bốn, tám. Chỉ có 8 là đủ chứa 5. 8=2^3. Vậy ta cần lấy 3 bit của host để làm net.
Default: 180.70.0.0/16 (vì thuộc class B)
Chú ý khi mask là 1 hết (255) thì phép AND sẽ giữ nguyên kết quả.
Address: 180.70.000 00000.00000000
Subnet mask: 255.255. 001 00000.00000000
010 00000.00000000
011 00000.00000000
100 00000.00000000 (*)
101 00000.00000000
110 00000.00000000
Như dzậy khi AND xong ta được 180.70.32.0, 180.70.64.0, 180.70.96.0, 180.70.128.0, 180.70.160.0, 180.70.192.0
Sau đó ta tính range cho mỗi subnet.
Ví dụ subnet (*):
Subnet address: 180.70.128.0
Range:
From 180.70.100 00000.00000001 (180.70.128.1)
To 180.70.100 11111.11111110 (180.70.159.254)
Broadcast Address: 180.70.159.255
Việc tính toán lặp lại cho các subnet khác nhau rất mất thời gian. Bởi dzậy, đến đây các bạn dư sức lập trình để tính IP cho nhanh. Còn không thì xài mấy cái tool có sẵn!
Tương tự cho câu 2, 180.70.0.0/16 cho 4000 máy.
Ta vẫn đếm 1, 2, 4, 8 …, 128,256,512,1024(2^10), 2048(2^11),4096(2^12).
Vậy để chứa đủ 4000 máy ta cần 12 bit nhị phân để làm host. Nghĩa là cần 32-12=20 bit làm mask, 20-16=4 bit làm net
dddddddd.dddddddd.nnnnhhhhh.hhhhhhhh
4 bit làm net nên ta có thể chia được bao nhiêu mạng con, địa chỉ cụ thể ra sao, … thì nhờ tool cho lẹ.
Đến đây chắc là được rồi ha. Ví dụ khi thi ta gặp bài toán này:
Một trường học được cấp địa chỉ ip 203.162.5.0. Hiệu trưởng muốn chia làm 5 mạng cho 5 phòng thực hành, mỗi phòng có 50 máy. Bạn hãy góp ý cho ổng thử xem!
Địa chỉ lớp C: 203.162.5.0/24
Đếm 1,2,4,8,16,32,64(2^6). Như vậy cần 6 bit nhị phân làm host, 2 bit làm net nên hỏng thể nào chia 5 mạng được nếu chia theo máy.
Đếm 1,2,4,8(2^3). Cần 3 bit nhị phân làm net, cần 5 bit nhị phân làm host nên chỉ được 2^5-2=30 máy cho mỗi phòng thôi.
Lúc sếp hỏi thì nói là nếu chia theo máy thì hỏng chia được 4 mạng. Còn nếu chia theo phòng học thì chỉ được 30 máy thôi. Lúc này ổng sợ rồi, chơi luôn câu tiếp: “Sếp giao cho em làm dzụ này đi, em làm hết mua thiết bị, máy tính, lắp đặt cho, hỏng tính dzô tiền lương đâu, chỉ tính tiền theo hóa đơn thôi.”
He he, sau đó nhận về cho anh em trên diễn đàn này làm để Trung thu anh em có tiền đi chơi, bao luôn bác Khoa, sướng chưa!
Bookmarks