Tải bản đầy đủ (.pdf) (64 trang)

Bài giảng tin học đại cương chương 3 lê thị ngọc thảo

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 (690.94 KB, 64 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>CHƯƠNG 3: </b>

<b>BIỂU DIỄN THÔNG TIN </b>

<b>TRONG MÁY TÍNH ĐIỆN TỬ</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>Chương 3: Biểu diễn thơng tin trong máy tính điện tử</b>

zMáy tính lưu trữ thông tin như thế nào?

zCác hệ đếm

zChuyển đổi giữa các hệ đếm

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>Máy tính lưu trữ thông tin như thế nào?</b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>Hệ thập phân (Số tự nhiên)</b>

zSử dụng hằng ngày

z10 chữ số: 0Ỉ9

zQui tắc: học từ lớp 1

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<b>Chuyển đổi giữa các hệ đếm</b>

zQui tắc 1

zQui tắc 2

zQui tắc 3

zQui tắc 4

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>Qui tắc 1 - Chuyển đổi từ hệ thập phân sang hệ cơ số b</b>

zLấy số thập phân chia cho cơ số b (b≠10) cho đến khi phần thương của phép chia bằng 0

zSố đổi được chính là các phần dư của phép chia theo thứ tự ngược lại.

110

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>Qui tắc 2 – Chuyển đổi từ hệ cơ số b </b>

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b>Qui tắc 3 - Chuyển từ hệ nhị phân về hệthập lục phân </b>

zNhóm lần lượt 4 bit từ phải sang trái

zSau đó thay thế các nhóm 4 bit bằng giá trị tương ứng với hệ thập lục phân

zVí dụ:

•<i>X = 11’1011<sub>2</sub>= 3B<sub>16</sub></i>

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>Thập phânNhị phânThập lục phân</b>

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<b>Qui tắc 4 - Chuyển từ hệ thập lục phân </b>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b>Phép cộng</b>

zQui tắc:

•Thực hiện theo thứ tự từ phải sang trái

•Cộng hai chữ số cùng cột

•Nếu tổng của hai chữ số lớn hơn cơ số thì

phần lớn hơn được nhớ chuyển sang cột tiếp

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<b>Phép trừ</b>

zQui tắc:

•Thực hiện theo thứ tự từ phải sang trái

•Trừ hai chữ số cùng cột

•Nếu chữ số của số bị trừ nhỏ hơn số trừ thìmượn 1 đơn vị từ cột tiếp theo.

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b>Phép chia</b>

zQui tắc: Tương tự phép chia số thập phân

zVí dụ:

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<b>Phép dịch chuyển SHIFT (1)</b>

zQui tắc:

•Được thực hiện tùy theo hướng di chuyển của các dãy bit

•Cho dãy bit của nó sang hướng trái/phải thì bit đầu tiên của dãy (là bit cao nhất nếu dịch chuyển sang trái, hay bit thấp nhất khi dịch chuyển sang phải) sẽ bị chuyển đi

•Bit cuối cùng của nó (là bit cao nhất nếu dịch chuyển sang trái, hay bit thấp nhất khi dịch chuyển sang phải) sẽ được đặt là 0

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<b>Phép dịch chuyển SHIFT (2)</b>

zVí d:

ãSHIFT LEFT 10001110 ặ 00011100

ãSHIFT RIGHT 10001110 Ỉ 01000111

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<b>Phép quay ROTATION</b>

zQui tắc:

•Tương tự phép dịch chuyển SHIFT

•Bit cuối sẽ được chuyển vào bit đầu tiên

zVí dụ:

•ROTATION LEFT 10001110 ặ 00011101

ãROTATION RIGHT 10001110 Ỉ 01000111

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

<b>Biểu diễn số ngun</b>

zSố ngun khơng dấu (khơng âm)

•Số biểu diễn ở hệ nhị phân

•Biểu diễn: 8 bit, 16 bit, 32bit hay 64bit

zSố ngun có dấu:

•Dựa trên hệ nhị phân khơng dấu

•Có 3 phương pháp:

•Phương pháp dấu lượng

•Phương pháp biểu diễn số bù 1

•Phương pháp biểu diễn số bù 2

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<b>Phương pháp dấu lượng (1)</b>

zSign – Magnitude

zBit cực trái được dùng làm bit dấu

•0 là dấu “+”

•1 là dấu “–”

zCác bit còn lại biểu diễn độ lớn của số

zPhương pháp để biểu diễn số âm K bit:

zLấy phần dương của số đó cộng thêm 2k-1

zBiểu diễn chúng ở hệ nhị phân.

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>Phương pháp dấu lượng (2)</b>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>Phương pháp dấu lượng (3)</b>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<b>Phương pháp biểu diễn số bù 1 (1)</b>

zOne’s complement

zBit cực trái làm bit dấu

•0 cho số dương

•1 cho số âm

zQui tắc biểu diễn số bù 1

•Biểu diễn dưới dạng nhị phân của trị tuyệt đối n theo mẩu k-bit cố định cho trước.

•Nếu n < 0 thì đổi 1 thành 0 và ngược lại trong

<i>dãy số nhị phân (gọi là đảo ngược bit)</i>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<b>Phương pháp biu din s bự 1 (2)</b>

zVớ d:

ãn=5 ặDựng mu 4 bit thỡ biu din l: 0101

ãn = -5 ặDựng mẩu 4 bit thì biểu diễn là: 1010

•n = 6 ỈDùng mẩu 4 bit thì biểu diễn là: 0110

•n = -6 ỈDùng mẩu 4 bit thì biểu diễn là: 1001

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<b>Phương pháp biểu diễn số bù 2 (1)</b>

zTwo’s complement

zBit cực trái làm bit dấu tương tự bù 1

zQui tắc biểu diễn số bù 2:

•Biểu diễn dưới dạng nhị phân của trị tuyệt đối n theo mẩu k bit cố định cho trước.

•Nếu n < 0:

•<b>bắt đầu từ phải qua trái giữ nguyên các bit cho</b>

đến khi gặp bit có giá trị là 1 đầu tiên,

•<b>sau đó các bit tiếp theo bên trái bit 1 đầu tiên đó</b>

<i>đổi 1 thành 0 và ngược lại (đảo bit)</i>

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

<b>Phương pháp biểu diễn số bù 2 (2)</b>

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>Phương pháp biểu diễn số bù 2 (3)</b>

<b>digits binary actual value</b>

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<b>Phép cộng khi biểu diễn bù 1 (1)</b>

zQui tắc:

•Thực hiện như phép tốn tương ứng trên hệ nhị phân

•Nếu ở 2 bit cực trái khi thực hiện phép cộngmà phát sinh bit nhớ Ỉ cộng nhớ vào kếtquả.

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<b>Phép cộng khi biểu diễn bù 1 (2)</b>

zVí dụ biểu diễn bù 1 mẩu 4-bit

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

<b>Phép cộng khi biểu diễn bù 2 (1)</b>

zQui tắc:

•Thực hiện như phép tốn tương ứng trên hệ nhị phân

•Nếu ở 2 bit cực trái khi thực hiện phép cộngmà phát sinh bit nhớ Æ loại bỏ nhớ

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<b>Phép cộng khi biểu diễn bù 2 (2)</b>

zVí dụ biểu diễn bù 2 mẫu 4-bit

</div><span class="text_page_counter">Trang 41</span><div class="page_container" data-page="41">

<b>Lỗi tràn số (1)</b>

zHiện tượng xảy ra khi số cần biểu diễn vượt q số bit cho trước để biểu diễn nó

zVí dụ:

•Mẩu 4 bit cho biểu diễn bù 2 cho -6, -4

ã-6 ặ 1010, -4 ặ 1100

ãKt qu phép cộng ở dạng bù 2 là 0110 là biểu diễn của +6, do đó kết quả bị sai.

zNguyên nhân: số lượng bit để biểu diễn quá ít

</div><span class="text_page_counter">Trang 42</span><div class="page_container" data-page="42">

<b>Lỗi tràn số (2)</b>

zKhắc phục: tăng số lượng bit nhiều hơn

•Mẩu 32 bit số dương lớn nhất 2147483647

</div><span class="text_page_counter">Trang 45</span><div class="page_container" data-page="45">

<b>Bài tập C</b>

zTính giá trị dương lớn nhất, giá trị âm nhỏ nhất nếu sử dụng:

•8 bit để biểu diễn số bù 1

•16 bit để biểu diễn số bù 2

</div><span class="text_page_counter">Trang 46</span><div class="page_container" data-page="46">

<b>Bài tập D - Các phép toán luận lý</b>

</div><span class="text_page_counter">Trang 47</span><div class="page_container" data-page="47">

<b>Biểu diễn số thực</b>

zBiểu diễn số thực với các cơ số

zPhương pháp dấu chấm động (Floating Point)

</div><span class="text_page_counter">Trang 48</span><div class="page_container" data-page="48">

<b>Biểu diễn số thực với các cơ số (1)</b>

z<i>Dùng dấu chấm cơ số (dấu . hoặc dấu ,)</i>

•Radix point

zBiểu diễn số thực trong hệ k

•Phần nguyên: trước dấu chấm cơ số

•Phần lẻ: sau dấu chấm cơ số •Phần thập phân trong hệ 10

zQui tắc???

</div><span class="text_page_counter">Trang 49</span><div class="page_container" data-page="49">

<b>Biểu diễn số thực với các cơ số (2)</b>

z<b>Qui tắc: đổi sang hệ 10</b>

</div><span class="text_page_counter">Trang 50</span><div class="page_container" data-page="50">

<b>Biểu diễn số thực với các cơ số (3)</b>

</div><span class="text_page_counter">Trang 51</span><div class="page_container" data-page="51">

<b>Biểu diễn số thực với các cơ số (4)</b>

z<b>Tính 1F.28<sub>h </sub>= ? = ?<sub>2</sub></b>

31.15625 = 11111.00101<sub>2</sub>

z<b>Tính 35.21<sub>8 </sub>= ?<sub>h</sub>= ?<sub>2 </sub>= ?</b>

</div><span class="text_page_counter">Trang 52</span><div class="page_container" data-page="52">

<b>Biểu diễn số thực với các cơ số (5)</b>

z<b>Qui tắc đổi từ số thập phân có phần lẻ sang hệ số k</b>

•Đổi phần ngun như qui tắc đổi số nguyên •chia nguyên lần lượt cho k đến khi =0

•kết quả phần nguyên là số dư ghi ngược lại

•Đổi phần lẻ theo qui tắc:

•nhân lần lượt chỉ phần lẻ cho k cho đến khi =0

•kết quả phần lẻ là phần nguyên lần lượt khi nhân

</div><span class="text_page_counter">Trang 53</span><div class="page_container" data-page="53">

<b>Biểu diễn số thực với các cơ số (6)</b>

</div><span class="text_page_counter">Trang 54</span><div class="page_container" data-page="54">

<b>Biểu diễn số thực với các cơ số (7)</b>

z<b>Chú ý chuyển đổi qua lại giữa các hệ 2 và </b>

8 (16) khi không đủ số lượng bit:

•Phần ngun thêm 0 phía trái nhất

•Phần lẻ thêm 0 phía phải nhất

</div><span class="text_page_counter">Trang 57</span><div class="page_container" data-page="57">

<b>Phương pháp dấu chấm động (3)</b>

zBiểu diễn số thực dấu chấm động 16 bit:

•1 bit trái nhất: bit dấu (+ hoặc -)

•4 bit tiếp theo: bit mũ (dấu lượng)

•11 bit cuối cùng: bit định trị (số nguyên)

</div><span class="text_page_counter">Trang 59</span><div class="page_container" data-page="59">

<b>Bài tập</b>

zBiểu diễn số thực dấu chấm động 16 bit: z<b>Biểu diễn -29.46875</b>

</div><span class="text_page_counter">Trang 60</span><div class="page_container" data-page="60">

<b>Phương pháp dấu chấm động (5)</b>

zChuẩn IEEE

•<i><b>Short Real-32 bits single precision</b></i>

•<b>1 bit sign, 8 bits exponent, 23 bits mantissa.</b>

•<i><b>Long Real: 64 bits double precision</b></i>

•<b>1 bit sign, 11 bits exponent, 52 bits mantissa.</b>

•Exponent biểu diễn kí pháp lệch N=27-1=127

</div><span class="text_page_counter">Trang 62</span><div class="page_container" data-page="62">

<b>Tóm tắt biểu diễn dấu chấm động</b>

</div><span class="text_page_counter">Trang 63</span><div class="page_container" data-page="63">

<b>Độ chính xác trong tính tốn số thực dấu chấm động</b>

zOverflow: khi giá trị > giá trị tuyệt đối của khả năng biểu diễn lớn nhất.

zUnderflow: 0 < giá trị < giá trị tuyệt đối của khả năng biểu diễn nhỏ nhất.

</div><span class="text_page_counter">Trang 64</span><div class="page_container" data-page="64">

<b>Biểu diễn ký tự</b>

zBộ mã ASCII ?

zBảng mã UNICODE ?

</div>

×