Tiếng AnhTiếng PhápTiếng Tây Ban Nha

Ad


Biểu tượng yêu thích OnWorks

bin_dec_hex - Trực tuyến trên Đám mây

Chạy bin_dec_hex trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks trên Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình giả lập trực tuyến MAC OS

Đây là lệnh bin_dec_hex có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


bin_dec_hex - Cách sử dụng ký hiệu nhị phân, thập phân và thập lục phân.

MÔ TẢ


Hầu hết mọi người sử dụng hệ thống đánh số thập phân. Hệ thống này sử dụng mười ký hiệu để đại diện
những con số. Khi mười ký hiệu đó được sử dụng hết, chúng bắt đầu lại từ đầu và tăng
vị trí bên trái. Chữ số 0 chỉ được hiển thị nếu nó là ký hiệu duy nhất trong dãy,
hoặc nếu nó không phải là cái đầu tiên.

Nếu điều này nghe có vẻ khó hiểu với bạn, thì đây là những gì tôi vừa nói trong các con số:

0
1
2
3
4
5
6
7
8
9
10
11
12
13

và như vậy.

Mỗi khi chữ số chín được tăng lên, nó được đặt lại về 0 và vị trí trước đó (thành
trái) được tăng dần (từ 0 đến 1). Sau đó, số 9 có thể được xem là "00009" và khi chúng ta
nên tăng số 9, chúng tôi đặt lại nó về 9 và tăng chữ số ngay trước số XNUMX để
số trở thành "00010". Các số không đứng đầu chúng tôi không viết ngoại trừ nếu nó là chữ số duy nhất
(số 0). Và tất nhiên, chúng tôi viết số không nếu chúng xuất hiện ở bất kỳ đâu bên trong hoặc ở cuối
con số:

"00010" -> "0010" -> "010" -> "10", nhưng không phải "1".

Điều này khá cơ bản, bạn đã biết điều này. Tại sao tôi lại nói với nó? Chà, máy tính thường
không biểu diễn các số có 10 chữ số khác nhau. Họ chỉ sử dụng hai ký hiệu khác nhau,
cụ thể là "0" và "1". Áp dụng các quy tắc tương tự cho tập hợp các chữ số này và bạn nhận được số nhị phân
hệ thống số đếm:

0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101

và như vậy.

Nếu bạn đếm số hàng, bạn sẽ thấy rằng đây là 14 số khác nhau. Các
các số giống nhau và có nghĩa giống như trong danh sách đầu tiên, chúng tôi chỉ sử dụng
sự đại diện. Điều này có nghĩa là bạn phải biết cách biểu diễn được sử dụng, hoặc
được gọi là hệ thống đánh số hoặc cơ sở. Thông thường, nếu chúng tôi không chỉ định rõ ràng
hệ thống đánh số được sử dụng, chúng tôi mặc nhiên sử dụng hệ thống thập phân. Nếu chúng tôi muốn sử dụng bất kỳ cái nào khác
hệ thống đánh số, chúng tôi sẽ phải làm rõ điều đó. Có một số phương pháp được áp dụng rộng rãi để
làm như vậy. Một hình thức phổ biến là viết 1010(2) có nghĩa là bạn đã viết ra một số trong
biểu diễn nhị phân. Nó là số mười. Nếu bạn viết 1010 mà không chỉ định
cơ số, con số được hiểu là một nghìn mười khi sử dụng cơ số 10.

Trong sách, một hình thức khác là phổ biến. Nó sử dụng các chỉ số phụ (ít ký tự, nhiều hơn hoặc ít hơn trong
giữa hai hàng). Bạn có thể bỏ dấu ngoặc đơn trong trường hợp đó và viết ra
số trong các ký tự bình thường theo sau bởi một số nhỏ ngay sau nó.

Vì hệ thống đánh số được sử dụng còn được gọi là cơ số, chúng ta nói về số 1100 cơ số 2,
số 12 cơ số 10.

Trong hệ nhị phân, người ta thường viết các số XNUMX ở đầu. Các con số được viết
xuống hàng loạt bốn, tám hoặc mười sáu tùy thuộc vào ngữ cảnh.

Chúng ta có thể sử dụng dạng nhị phân khi nói chuyện với máy tính (... lập trình ...), nhưng số
sẽ có các đại diện lớn. Số 65'535 (thường trong hệ thập phân a 'là
được sử dụng để phân tách các khối gồm ba chữ số để dễ đọc) sẽ được viết ra dưới dạng
1111111111111111(2) gấp 16 lần chữ số 1. Cách này khó và dễ mắc lỗi.
Do đó, chúng tôi thường sử dụng một cơ số khác, được gọi là hệ thập lục phân. Nó sử dụng 16 khác nhau
các ký hiệu. Đầu tiên, các ký hiệu từ hệ thập phân được sử dụng, sau đó chúng tôi tiếp tục với
Ký tự chữ cái. Chúng tôi nhận được 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E và F. Đây
hệ thống được chọn vì dạng thập lục phân có thể được chuyển đổi thành hệ thống nhị phân rất
dễ dàng (và quay lại).

Có một hệ thống khác đang được sử dụng, được gọi là hệ bát phân. Điều này phổ biến hơn trong
ngày xưa, nhưng không được sử dụng thường xuyên nữa. Đôi khi bạn có thể thấy nó được sử dụng, bạn
nên làm quen với nó và chúng tôi sẽ hiển thị nó dưới đây. Đó là câu chuyện tương tự như với câu chuyện khác
biểu diễn, nhưng với tám biểu tượng khác nhau.

Nhị phân (2)
Hệ bát phân (8)
Số thập phân (10)
Hệ thập lục phân (16)

(2) (8) (10) (16)
00000 0 0 0
00001 1 1 1
00010 2 2 2
00011 3 3 3
00100 4 4 4
00101 5 5 5
00110 6 6 6
00111 7 7 7
01000 10 8 8
01001 11 9 9
01010 12 10 Một
01011 13 11B
01100 14 12C
01101 15 13 Đ
01110 16 14 Đ
01111 17 15 F
10000 20 16 10
10001 21 17 11
10010 22 18 12
10011 23 19 13
10100 24 20 14
10101 25 21 15

Hầu hết các máy tính được sử dụng ngày nay đang sử dụng byte XNUMX bit. Điều này có nghĩa là họ lưu trữ
tám bit cùng một lúc. Bạn có thể thấy lý do tại sao hệ bát phân không thực tế nhất cho điều đó:
Bạn cần ba chữ số để đại diện cho tám bit và điều này có nghĩa là bạn phải sử dụng
một chữ số hoàn chỉnh để chỉ biểu diễn hai bit (2 + 3 + 3 = 8). Đây là một sự lãng phí. Đối với hệ thập lục phân
chữ số, bạn chỉ cần hai chữ số được sử dụng hoàn toàn:

(2) (8) (10) (16)
11111111 377 255

Bạn có thể thấy lý do tại sao hệ nhị phân và hệ thập lục phân có thể được chuyển đổi nhanh chóng: Đối với mỗi hệ thập lục phân
có đúng bốn chữ số nhị phân. Lấy một số nhị phân: lấy bốn chữ số từ
bên phải và tạo một chữ số thập lục phân từ nó (xem bảng trên). Lặp lại điều này cho đến khi
không có chữ số nào nữa. Và ngược lại: Lấy một số thập lục phân. Cho mỗi
, hãy viết ra mã số tương đương nhị phân của nó.

Máy tính (hay đúng hơn là trình phân tích cú pháp chạy trên chúng) sẽ gặp khó khăn khi chuyển đổi
số lượng như 1234(16). Do đó, các số thập lục phân được chỉ định bằng một tiền tố. Cái này
tiền tố phụ thuộc vào ngôn ngữ bạn đang viết. Một số tiền tố là "0x" cho C, "$"
đối với Pascal, "#" đối với HTML. Người ta thường cho rằng nếu một số bắt đầu bằng số XNUMX, nó
là bát phân. Nó không quan trọng những gì được sử dụng miễn là bạn biết nó là gì. Tôi sẽ sử dụng "0x"
đối với hệ thập lục phân, "%" đối với nhị phân và "0" đối với bát phân. Những con số sau đây là tất cả
giống nhau, chỉ là đại diện của chúng (cơ sở) là khác nhau: 021 0x11 17% 00010001

Để làm số học và chuyển đổi, bạn cần hiểu một điều nữa. Nó là cái gì đó
bạn đã biết nhưng có lẽ bạn chưa "thấy" nó:

Nếu bạn viết ra 1234, (không có tiền tố, vì vậy nó là số thập phân), bạn đang nói về số một
nghìn, hai trăm ba mươi bốn. Theo loại công thức:

1 * 1000 = 1000
2 * 100 = 200
3 * 10 = 30
4 * 1 = 4

Điều này cũng có thể được viết là:

1 * 10 ^ 3
2 * 10 ^ 2
3 * 10 ^ 1
4 * 10 ^ 0

trong đó ^ có nghĩa là "sức mạnh của".

Chúng tôi đang sử dụng cơ số 10 và các vị trí 0,1,2 và 3. Vị trí ngoài cùng bên phải
KHÔNG được nhân với 10. Cái thứ hai từ bên phải sẽ được nhân một lần với
10. Số thứ ba từ bên phải được nhân với 10 hai lần. Điều này tiếp tục cho bất cứ điều gì
các vị trí được sử dụng.

Nó giống nhau trong tất cả các biểu diễn khác:

0x1234 sẽ là

1 * 16 ^ 3
2 * 16 ^ 2
3 * 16 ^ 1
4 * 16 ^ 0

01234 sẽ là

1 * 8 ^ 3
2 * 8 ^ 2
3 * 8 ^ 1
4 * 8 ^ 0

Ví dụ này không thể được thực hiện cho hệ nhị phân vì hệ thống đó chỉ sử dụng hai ký hiệu. Nữa
thí dụ:

% 1010 sẽ là

1 * 2 ^ 3
0 * 2 ^ 2
1 * 2 ^ 1
0 * 2 ^ 0

Sẽ dễ dàng hơn khi chuyển nó sang dạng thập lục phân và chỉ cần dịch% 1010
thành 0xA. Sau một thời gian thì bạn sẽ quen. Bạn sẽ không cần phải thực hiện bất kỳ phép tính nào
nữa, nhưng chỉ cần biết rằng 0xA có nghĩa là 10.

Để chuyển đổi một số thập phân thành một hệ thập lục phân, bạn có thể sử dụng phương pháp tiếp theo. Nó sẽ mất
một thời gian để có thể ước tính, nhưng sẽ dễ dàng hơn khi bạn sử dụng hệ thống
thường xuyên hơn. Chúng tôi sẽ xem xét một cách khác sau đó.

Đầu tiên bạn cần biết có bao nhiêu vị trí sẽ được sử dụng trong hệ thống kia. Để làm như vậy, bạn
cần biết số lượng tối đa bạn sẽ sử dụng. Chà, điều đó không khó như vẻ ngoài của nó. Trong
thập phân, số tối đa mà bạn có thể tạo với hai chữ số là "99". Mức tối đa cho
ba: "999". Số tiếp theo sẽ cần một vị trí bổ sung. Đảo ngược ý tưởng này và bạn sẽ
thấy rằng con số có thể được tìm thấy bằng cách lấy 10 ^ 3 (10 * 10 * 10 là 1000) trừ 1 hoặc 10 ^ 2 trừ
một.

Điều này cũng có thể được thực hiện cho hệ thập lục phân:

16 ^ 4 = 0x10000 = 65536
16 ^ 3 = 0x1000 = 4096
16 ^ 2 = 0x100 = 256
16 ^ 1 = 0x10 = 16

Nếu một số nhỏ hơn 65'536, nó sẽ phù hợp với bốn vị trí. Nếu số lượng lớn hơn
hơn 4'095, bạn phải sử dụng vị trí 4. Bạn có thể trừ 4'096 bao nhiêu lần cho
số không dưới XNUMX là chữ số đầu tiên bạn viết ra. Đây sẽ luôn là một
số từ 1 đến 15 (0x1 đến 0xF). Làm tương tự cho các vị trí khác.

Hãy thử với 41'029. Nó nhỏ hơn 16 ^ 4 nhưng lớn hơn 16 ^ 3-1. Điều này có nghĩa là chúng tôi
phải sử dụng bốn vị trí. Chúng ta có thể trừ 16 ^ 3 từ 41'029 mười lần mà không cần trừ đi
dưới không. Do đó, chữ số tận cùng bên trái sẽ là "A", vì vậy chúng ta có 0xA ????. Số là
giảm xuống 41'029 - 10 * 4'096 = 41'029-40'960 = 69. 69 nhỏ hơn 16 ^ 3 nhưng không lớn hơn
hơn 16 ^ 2-1. Do đó chữ số thứ hai là "0" và bây giờ chúng ta có 0xA0 ??. 69 nhỏ hơn
16 ^ 2 và lớn hơn 16 ^ 1-1. Chúng tôi có thể trừ 16 ^ 1 (chỉ là 16 đơn giản) bốn lần và
viết ra "4" để nhận được 0xA04?. Trừ 64 cho 69 (69 - 4 * 16) và chữ số cuối cùng là 5 ->
0xA045.

Phương pháp khác xây dựng số từ bên phải. Hãy thử lại 41'029. Chia cho
16 và không sử dụng phân số (chỉ số nguyên).

41'029 / 16 là 2'564 với dư là 5. Viết ra 5.
2'564 / 16 là 160 với phần dư là 4. Viết 4 vào trước 5.
160/16 là 10 không có phần dư. Thêm 45 với 0.
10/16 là dưới một. Kết thúc ở đây và thêm 0xA. Kết thúc bằng 0xA045.

Sử dụng phương pháp nào là tùy thuộc vào bạn. Sử dụng bất cứ điều gì phù hợp với bạn. Tôi sử dụng cả hai mà không có
có thể nói tôi sử dụng phương pháp nào trong mỗi trường hợp, nó chỉ phụ thuộc vào con số, tôi nghĩ.
Sự thật là, một số con số sẽ xảy ra thường xuyên trong khi lập trình. Nếu con số gần với
một phương pháp tôi quen thuộc, sau đó tôi sẽ sử dụng phương pháp đầu tiên (như 32'770 thành 32'768
+ 2 và tôi chỉ biết rằng nó là 0x8000 + 0x2 = 0x8002).

Đối với hệ nhị phân, cách tiếp cận tương tự có thể được sử dụng. Cơ số là 2 chứ không phải 16, và số lượng
các vị trí sẽ phát triển nhanh chóng. Sử dụng phương pháp thứ hai có lợi thế mà bạn có thể thấy
rất dễ dàng nếu bạn nên viết ra số không hoặc số một: nếu bạn chia cho hai phần còn lại
sẽ bằng XNUMX nếu nó là một số chẵn và một nếu nó là một số lẻ:

41029/2 = 20514 dư 1
20514/2 = 10257 dư 0
10257/2 = 5128 dư 1
5128/2 = 2564 dư 0
2564/2 = 1282 dư 0
1282/2 = 641 dư 0
641/2 = 320 dư 1
320/2 = 160 dư 0
160/2 = 80 dư 0
80/2 = 40 dư 0
40/2 = 20 dư 0
20/2 = 10 dư 0
10/2 = 5 dư 0
5/2 = 2 dư 1
2/2 = 1 dư 0
1/2 dưới 0 còn lại 1

Viết kết quả từ phải sang trái:% 1010000001000101

Nhóm bốn người:

% 1010000001000101
% 101000000100 0101
% 10100000 0100 0101
% 1010 0000 0100 0101

Chuyển đổi thành hệ thập lục phân: 0xA045

Nhóm% 1010000001000101 theo ba và chuyển đổi thành bát phân:

% 1010000001000101
% 1010000001000 101
% 1010000001 000 101
% 1010000 001 000 101
% 1010 000 001 000 101
% 1 010 000 001 000 101
% 001 010 000 001 000 101
1 2 0 1 0 5 -> 0120105

Vậy:% 1010000001000101 = 0120105 = 0xA045 = 41029
Hoặc: 1010000001000101(2) = 120105(8) = A045(16) = 41029(10)
Hoặc: 1010000001000101(2) = 120105(8) = A045(16) = 41029

Lúc đầu trong khi thêm số, bạn sẽ chuyển đổi chúng sang dạng thập phân và sau đó quay lại
thành dạng ban đầu của chúng sau khi thực hiện phép cộng. Nếu bạn sử dụng hệ thống đánh số khác
thường xuyên, bạn sẽ thấy rằng bạn sẽ có thể thực hiện số học trực tiếp trong cơ sở
đã sử dụng. Trong bất kỳ cách biểu diễn nào, nó đều giống nhau, thêm các số ở bên phải, viết ra
chữ số tận cùng bên phải từ kết quả, hãy nhớ các chữ số khác và sử dụng chúng trong lần tiếp theo
vòng. Tiếp tục với chữ số thứ hai từ bên phải và cứ tiếp tục như vậy:

% 1010 +% 0111 -> 10 + 7 -> 17 ->% 00010001

sẽ trở thành

% 1010
% 0111 +
| |
||| + - thêm 0 + 1, kết quả là 1, không có gì để nhớ
|| + --- thêm 1 + 1, kết quả là% 10, viết ra 0 và nhớ 1
| + ---- thêm 0 + 1 + 1 (có nhớ), kết quả = 0, nhớ 1
+ ----- thêm 1 + 0 + 1 (có nhớ), kết quả = 0, nhớ 1
không có gì để thêm, 1 được nhớ, kết quả = 1
--------
% 10001 là kết quả, tôi muốn viết nó là% 00010001

Đối với các giá trị thấp, hãy thử tự thực hiện các phép tính, sau đó kiểm tra chúng bằng máy tính.
Bạn càng tự mình thực hiện các phép tính, bạn sẽ càng thấy rằng mình đã không thực hiện
những sai lầm. Cuối cùng, bạn sẽ tính toán trong các cơ sở khác dễ dàng như khi bạn làm chúng trong
số thập phân.

Khi những con số lớn hơn, bạn sẽ phải nhận ra rằng một máy tính không được gọi là
máy tính chỉ để có một cái tên đẹp. Có nhiều máy tính khác nhau có sẵn, sử dụng
họ. Đối với Unix, bạn có thể sử dụng "bc", viết tắt của Binary Calculator. Nó tính toán không
chỉ ở dạng thập phân, nhưng trong tất cả các cơ số bạn sẽ muốn sử dụng (trong số đó có Binary).

Đối với người dùng Windows: Khởi động máy tính (bắt đầu-> chương trình-> phụ kiện-> máy tính) và
nếu cần bấm xem-> khoa học. Bây giờ bạn có một máy tính khoa học và có thể tính toán
ở dạng nhị phân hoặc thập lục phân.

Sử dụng bin_dec_hex trực tuyến bằng các dịch vụ onworks.net


Máy chủ & Máy trạm miễn phí

Tải xuống ứng dụng Windows & Linux

  • 1
    quả bơ
    quả bơ
    Avogadro là một phân tử tiên tiến
    trình chỉnh sửa được thiết kế để sử dụng đa nền tảng
    trong hóa học tính toán, phân tử
    mô hình hóa, tin sinh học, vật liệu
    khoa học và ...
    Tải xuống Avogadro
  • 2
    XMLTV
    XMLTV
    XMLTV là một tập hợp các chương trình để xử lý
    Danh sách TV (tvguide) và giúp quản lý
    xem TV của bạn, lưu trữ danh sách trong một
    Định dạng dựa trên XML. Có những tiện ích để
    làm ...
    Tải xuống XMLTV
  • 3
    Strikr
    Strikr
    Dự án phần mềm miễn phí Strikr. Đồ tạo tác
    được phát hành theo một 'dựa trên mục đích'
    giấy phép kép: AGPLv3 (cộng đồng) và
    CC-BY-NC-ND 4.0 quốc tế
    (Quảng cáo)...
    Tải xuống Striker
  • 5
    QUÀ TẶNG
    QUÀ TẶNG
    giflib là một thư viện để đọc và
    viết hình ảnh gif. Đó là API và ABI
    tương thích với libungif trong
    sử dụng rộng rãi trong khi nén LZW
    thuật toán đã...
    Tải xuống GIFLIB
  • 6
    Alt-F
    Alt-F
    Alt-F cung cấp một mã nguồn mở và miễn phí
    chương trình cơ sở thay thế cho DLINK
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F có Samba và NFS;
    hỗ trợ ext2 / 3/4 ...
    Tải xuống Alt-F
  • Khác »

Lệnh Linux

  • 1
    2ping6
    2ping6
    2ping - Tiện ích ping hai chiều ...
    Chạy 2ping6
  • 2
    2 đến 3-2.7
    2 đến 3-2.7
    2to3-2.7 - Công cụ chuyển đổi Python2 sang Python3
    hữu ích. Cảm ơn !
    Chạy 2to3-2.7
  • 3
    cpqarrayd
    cpqarrayd
    cpqarrayd - Bộ điều khiển mảng
    giám sátdaemon CỐ ĐỊNH: cpqarrayd [-d]
    [-v] [-t máy chủ [-t máy chủ]] MÔ TẢ:
    Chương trình này có khả năng giám sát HP
    (Compaq) sắp xếp...
    Chạy cpqarrayd
  • 4
    cproto
    cproto
    cproto - tạo nguyên mẫu hàm C
    và chuyển đổi các định nghĩa hàm ...
    Chạy cproto
  • 5
    sửa lỗi Gapi2
    sửa lỗi Gapi2
    không có giấy tờ - Không có trang hướng dẫn nào cho việc này
    chương trình. MÔ TẢ: Chương trình này thực hiện
    không có manpage. Chạy lệnh này
    với công tắc trợ giúp để xem nó là gì
    làm. Đối với ...
    Chạy Gapi2-fixup
  • 6
    trình phân tích cú pháp Gapi2
    trình phân tích cú pháp Gapi2
    không có giấy tờ - Không có trang hướng dẫn nào cho việc này
    chương trình. MÔ TẢ: Chương trình này thực hiện
    không có manpage. Chạy lệnh này
    với công tắc trợ giúp để xem nó là gì
    làm. Đối với ...
    Chạy trình phân tích cú pháp Gapi2
  • Khác »

Ad