進位制
電腦的組成
進位
十進制
生活中的進位制是十進制,這種進位制通常使用10個阿拉伯數字(即 0-9 )進行記數
0 1 2 3 4 5 6 7 8 9 10二進制
幾乎所有的電子計算機內部都使用二進位制,分別為「0」和「1」表示「關」和「開」。用於大多數電子計數器。
0 1 10 11 100 101 110 111 1000 1001 1010 1011十六進制
經常用於計算機領域,2到4次冪。十六位數字為「0-9」,接著是「A-F」。
0 1 2 3 4 5 6 7 8 9 A B C D E F 10
10進位轉2進位
67(十進位)
1 | 67÷2 = 33...1 |
所以二進制就是 1000011
2進位轉16進位
10110011
先拆解數字
1011與0011
1011 = B
0011 = 3
所以10110011 = B3
2進位轉成10進位
1101
就如我們小時候學的數學一樣
1 | 千 百 十 個 |
個 2^0 * 1 = 1
十 2^1 *0 = 0
百 2^2 *1 = 4
千 2^3 *1 = 8
1+0+4+8 = 13
1101(二進制) 的十進制就是 13(十進制)
title: 計算機概論6
date: 2024-10-16 08:58:19
tags:
overflow 溢位
七進制舉例
1 | 0 1 1 1. +7 |
第四位數如果原本是正數加完之後如果變成負數就是超過表示範圍
1001 → 0110 → 0111
補數可以說是將數值變成負數
1001 = -7
1 | 1001 = -7 |
一個負數加一個負數 = 正數 = overflow
一個正數加一個正數 = 負數 = overflow
練習
11100110 十進制答案
1 | 11100110 -> 00011001 (一的補數)-> 00011010 (二的補數)= -26 |
解釋
原始二進制數:
• 11100110
這是一個 8 位的二進制數,表示它是用來表示一個 有符號的數字,其中最高位(最左邊的 1)是符號位。當最高位是 1 時,這個數是負數;當最高位是 0 時,這個數是正數。
2. 求一的補數:
• 將每個位的數字反轉,將 1 變成 0,0 變成 1。
• 原數字是 11100110,它的一的補數是 00011001。
3. 求二的補數:
• 在一的補數基礎上加上 1。
• 00011001 + 1 = 00011010。
4. 將二進制數轉換為十進制數:
• 現在,我們已經得到了 00011010,它是二的補數形式,用來表示負數。
• 00011010 = 26(十進制)。
檢查碼
- 例如身份字號F233456789
- 其中F代表地區
- 剩下七個數字為流水號
Big - 5編碼規則(可變長度編碼)
- 兩個byte代表一個漢字
- 想辦法與英文字母相容
分首碼次碼,高位元的在前面

舉例:big-5 (cont’)
0 一 A4440
1 乙 A4440
3 丁 A4440
5400 籲 C67E
5401 乂 C940
5402 乜 C941
5403 凵 C942
5404 匚 C943
5405 厂 C944
5406 万 C945
5407 丌 C946
https://web.tnu.edu.tw/me/study/moodle/tutor/vb6/tutor/r05/index.htm
其中有 408 個符號和所謂常用字 5401 個,
次常用字 7652 個
輸入法
- 字音輸入法
- 注音
- 拼音
- 字型輸入法
- 倉頡
- 大易
假如在鍵盤上我們可以應用的按件數是n
則n個鍵可以組成
$ n +n^2+n^3+…..
舉例
1 | 0 1 1 0 ———> 6 |
上面是錯誤的
每個輸入法都有規則,開頭的第一位是1就是負數0就是正數
也可以用2的補數表去計算
正確
1 1 0 1 舉例
1 | 1101 2進位轉成 10進位 |
轉換後之後記得加上負號
-7 寫出2的補數表
1 | 7 = 0111 |
1 0 0 0的補數 = 1 0 0 0
為什麼?
- 因為在4位2進制下多出來的會被拋棄
4位補數的範圍
| 二進制 | 十進制 | 說明 |
|---|---|---|
0000 | 0 | 正數 0 |
0001 | +1 | 正數 1 |
0010 | +2 | 正數 2 |
0011 | +3 | 正數 3 |
0100 | +4 | 正數 4 |
0101 | +5 | 正數 5 |
0110 | +6 | 正數 6 |
0111 | +7 | 正數 7 |
1000 | -8 | 負數 -8,特殊情況 |
1001 | -7 | 負數 -7 |
1010 | -6 | 負數 -6 |
1011 | -5 | 負數 -5 |
1100 | -4 | 負數 -4 |
1101 | -3 | 負數 -3 |
1110 | -2 | 負數 -2 |
1111 | -1 | 負數 -1 |
表達範圍
4 bits = +7 ~ -8
= +2^(4-1) -1 ~ -2(4-1)
n bits = +2^(n-1) -1 ~ -2^(n-1)