PDA

View Full Version : Cần giúp về cách tính số Hex!!!



phongnhattran
01-10-2004, 00:49
Có huynh nào biết các phép toán của số Hex (+, - , *, /...) chỉ đệ với.
Nếu có thể mỗi phép tính cho vài ví dụ về cách tính.
Có thể nếu các trường hợp đặc biệt khi tính toán với số Hex.
Cảm ơn.

phongnhattran
06-10-2004, 16:45
Sao không ai ở đây biết hết dzậy.
Đệ phải search ở trong Google hết cả buổi mới kiếm được tài liệu. Thật chán Forum nhà ta hết sức dzậy nè sad
Chỉ cần học thuộc bảng Tính cộng 16h và Bảng tính nhân 16h là làm được liền thôi mà.
Download tại đây :
http://cs.bmcc.cc.or.us/cs122/Notes/IntArith.htm

mo dung phuc
13-10-2004, 18:04
nói gì thế hả
cái vấn đề này không như bạn nghĩ đâu
nó đơn giản ghê lắm
làm tính hệ 16 hay là hệ cơ số bất kỳ đều có nguyên tắc như nhau thôi
chứ ai lại học thuộc lòng như bạn nói
thế nếu như phải làm cả hệ bin, oct hay gì đó thì làm sao nhớ hết nồi

phongnhattran
16-10-2004, 18:38
Làm gì có quy tắc nào chứ.
Thì cũng giống như lúc còn học lớp 2, 3 gí đó, huynh cũng phải học bản cửu chương thì mới biết tính nhân đúng không? Chứ nếu không học thì chẵng lẽ mỗi lần lấy 9*8 là bắt đầu ngồi đếm à 8 lần con số 9 như vậy à.
Bản Thập lục chương cũng giống như bảng cửu chương thôi, chỉ có cách là học thuộc, cũng dễ thuộc thôi mà. Chỉ có bảng tính cộng thì còn đếm được nhanh nên không cần học thuộc, chỉ cần học ...đếm mà thôi.
Nhưng tốt nhất là học thuộc thì tính mới lẹ như hệ 10 vậy (Hồi nhỏ khi học hệ 10, huynh cũng phải học thuộc hết còn gì?)

Đệ càng lúc càng thấy diễn dàn mình ngày càng thiếu các bài viết hay, thậm chí hỏi một chủ đề cụ thể mà cũng không nhận được sự trả lời thỏa đáng, đệ đợi dài cổ đến 2 tuần mà chẳng thấy ai trả lời, đành tự mình search vậy. Không biết mấy Mod trên diễn đàn đâu hết rùi???

neverstop
16-10-2004, 21:45
sai rồi phongnhattran ạ. bất kỳ một cơ số nào cũng có quy tắc chung hết. khi bạn thử cộng trừ trên 1 vài cơ số thì bạn sẽ thấy điểm chung của nó (cái này hơi khó phát biểu, làm thử biết ngay).
nếu không thích thì bạn hãy đổi các số ra hệ cơ số 10, thực hiện các phép tính trên đó rồi chuyển ngược lại thôi.

mo dung phuc
19-10-2004, 17:04
ví dụ này
hệ nhị phân
1001
+
1111
=????
----
1+1=0 nhớ 1
1+0=1 nhớ 1 bằng 0 nhớ 1
1+0=1 nhớ 1 bằng 0 nhớ 1
1+1=0 nhớ 1 bằng 1 nhớ 1
=11000
đấy như hệ 10, cứ vượt quá 10 thì nhớ còn đây cứ quá 1 thì nhớ, các hệ cơ số khác tương tự thôi mà

thailehuy
20-10-2004, 11:36
Ví dụ như trong hexa thì vượt quá F mới nhớ 1

hieusua
20-10-2004, 18:09
Có cách tính hay lắm nè, xài máy CASIO fx-570MS.

phongnhattran
20-10-2004, 21:17
sai rồi phongnhattran ạ. bất kỳ một cơ số nào cũng có quy tắc chung hết. khi bạn thử cộng trừ trên 1 vài cơ số thì bạn sẽ thấy điểm chung của nó (cái này hơi khó phát biểu, làm thử biết ngay).
nếu không thích thì bạn hãy đổi các số ra hệ cơ số 10, thực hiện các phép tính trên đó rồi chuyển ngược lại thôi.

Trời. Thầy cho một đề làm trong 60 phút, mà huynh bắt đổi ra hệ 10 tính rồi lại đổi ra hệ 16, làm chưa xong phép tính thì đã hết giờ mất rùi. Chẳng hạn như phép tính này : CACA02004CAFEDA2005 * 5CADA = ???
(Tạm dịch dzui là CACAO2004CAFÊĐÁ2005 * 5CAĐÁ )
nội các vụ đổi từng số hạng ra hệ 10 rồi tính ở trên hệ 10 thôi đã là một...cực hình rùi. Lại còn sau đó đổi kết quả ra hệ 16 nữa thì đệ lấy thời gian đâu mà làm bài khác hỉ?

To neverstop : Chỉ có quy tắc chung cho phép cộng thôi ví dụ như : A+1 = B, A+2=C, ... A+A=14 (đọc là một bốn), A+B=15... A+F=19.
Các số và chữ còn lại tương tự nhích một đơn vị. Nhưng thử hỏi trong phép nhân thì sao?
A*A = ???
Không lẽ ngồi lấy A+A+A+A+A.... (cộng A lần tức là cộng đến 10 lần con số A)
Có ai đủ kiên nhẫn ngồi tính từng phần một không rồi sau đó cộng dồn lại??? Chính vì vậy chỉ còn cách...học thuộc thôi. Bởi vì chúng ta quen với hệ 10 từ hồi còn học...tiểu học nên tính toán nhanh theo phản xạ. (thì hệ 10 chúng ta cũng phải học bảng cửu chương, đúng không, cứ nếu không thì hổng lẽ lấ 9*9 là ta phải lấy 9+9+9+9 (chín lần) như vậy sao? Vậy thì bíet bao giờ mới làm xong một bài toán. :yes:

bichduyen_nt
21-10-2004, 20:13
Mà bạn ơi, bạn làm gì mà phải tính hệ số 16 tùm lum phép toán vậy, Duyên lập trình từ hồi trước tới giờ toàn gặp cộng trừ không à, hi hi, chưa bao giờ gặp phải chuyện đi nhân 2 số HEX lại với nhau hết, chắc tại trình độ chưa cao quá, hi hi, vậy có khi nào mình đi giải phương trình bậc 2 mà là hệ HEX không hén?

monkeyvu
21-10-2004, 21:59
Ông thầy nào cho đề thấy ghét quá vậy ? lol

tinman
22-10-2004, 01:57
Trời. Thầy cho một đề làm trong 60 phút, mà huynh bắt đổi ra hệ 10 tính rồi lại đổi ra hệ 16, làm chưa xong phép tính thì đã hết giờ mất rùi. Chẳng hạn như phép tính này : CACA02004CAFEDA2005 * 5CADA = ???
(Tạm dịch dzui là CACAO2004CAFÊĐÁ2005 * 5CAĐÁ )
nội các vụ đổi từng số hạng ra hệ 10 rồi tính ở trên hệ 10 thôi đã là một...cực hình rùi. Lại còn sau đó đổi kết quả ra hệ 16 nữa thì đệ lấy thời gian đâu mà làm bài khác hỉ?

To neverstop : Chỉ có quy tắc chung cho phép cộng thôi ví dụ như : A+1 = B, A+2=C, ... A+A=14 (đọc là một bốn), A+B=15... A+F=19.
Các số và chữ còn lại tương tự nhích một đơn vị. Nhưng thử hỏi trong phép nhân thì sao?
A*A = ???
Không lẽ ngồi lấy A+A+A+A+A.... (cộng A lần tức là cộng đến 10 lần con số A)
Có ai đủ kiên nhẫn ngồi tính từng phần một không rồi sau đó cộng dồn lại??? Chính vì vậy chỉ còn cách...học thuộc thôi. Bởi vì chúng ta quen với hệ 10 từ hồi còn học...tiểu học nên tính toán nhanh theo phản xạ. (thì hệ 10 chúng ta cũng phải học bảng cửu chương, đúng không, cứ nếu không thì hổng lẽ lấ 9*9 là ta phải lấy 9+9+9+9 (chín lần) như vậy sao? Vậy thì bíet bao giờ mới làm xong một bài toán. :yes:

Thật ra thì nếu ông thầy cho đem calculator vào lớp thì đở rồi... máy tính loại khoa học bây giờ đều hổ trợ cho các phép toán hex, oct, bin và dec.

Samir Duran
29-10-2004, 18:12
Grừ..... chung quy các hệ đếm hiện nay đều dựa trên cơ số 10 mà ra thôi - 1 đơn vị vẫn là 1 đơn vị , chỉ khác cách biểu hiện. Nói phép nhân Hex không có quy luật là sai, chỉ có điều sự thay đổi của nó không quen thuộc với ta thôi.

jiSh@n
29-10-2004, 19:04
Nhưng mà nếu chơi phép nhân 10 chữ số hex thì lol lol Casio hay thầy cũng đều chết....

phongnhattran
04-11-2004, 20:56
sao các huynh...cố chấp thế nhỉ...hihihihi :D
Phép nhân thì làm gì có quy tắc nào. Phép nhân chẳng qua chỉ là phép cộng cộng thêm n lần mà thôi. Phép chia thì thật ra chính là phép trừ, mà phép trừ lại chính là lấy đảo của phép cộng. Chính vì vậy Đơn vị đo của CPU là số phép cộng, bởi vì thực ra CPU chỉ biết mỗi mình phép cộng.
Vì vậy nói phép nhân là có quy tắc riêng là ... không đúng. Nếu nói rằng dựa trên phép cộng mới là chính xác. Vì vậy đối với phép nhân thì chỉ có cách học thuộc, không có một quy tắc nào hết. Còn nếu thích thì khỏi học, và mỗi lần tính lại cộng dồn vào, và bảo đảm tính xong một phép tính thì.....mệt xỉu luôn.


Grừ..... chung quy các hệ đếm hiện nay đều dựa trên cơ số 10 mà ra thôi - 1 đơn vị vẫn là 1 đơn vị , chỉ khác cách biểu hiện. Nói phép nhân Hex không có quy luật là sai, chỉ có điều sự thay đổi của nó không quen thuộc với ta thôi.

ai bảo bác là các hệ đếm dựa trên hệ 10 vậy. Bởi vì bác quen thuộc hệ 10 quá, nên hệ nào cũng đổi ra hệ 10 hết. Mỗi hệ cơ số đều sử dụng có một quy tắc cộng mà từ đó tạo ra các phép tính và các ký số.
Nói Hệ 10 là gốc thì....WRONG!!!!

hehe...Tự nhiên mở post này huynh đệ vào đây ...tám dzữ hen....hihihi lol

jiSh@n
05-11-2004, 02:06
Nói CPU chỉ biết mỗi phép cộng là ko chính xác đâu bạn, còn các phép bitwise nữa. Nếu ko có bitwse thì ko thể có phép nhân đâu, vì phép nhân gồm có phép cộng và phép shift.

hieusua
05-11-2004, 17:37
Óai, vậy ra CPU chỉ làm được vậy thôi à? Tui học 1 môn gọi là "Kĩ thuật điện tử", nó có nói về các mạch khuếch đại thuật tóan, nó có mạch cộng, mạch trừ, mạch đảo dấu, mạch vi phân. mạch tích phân, mạch mũ um sùm, cứ tưởng CPU nó làm được nhiều lắm chớ.

jiSh@n
05-11-2004, 18:51
Đương nhiên là nó làm được nhiều việc lắm chứ, nhưng cơ bản là dựa trên bitwise và cộng, ví dụ như mạch nhân thì tạo thành từ mạch cộng và dịch... Học môn Kỹ thuật số sẽ rõ hơn.

phongnhattran
05-11-2004, 20:48
vậy à. Uh,, đệ quên, còn phép bitwise nữa. Nhưng mà dầu sao thì phép bitwise cũng là lấy các mạch cộng và mạch & mà tạo nên thui hỉ?

Trùi, đệ dưa ra topic này để nói về số Hex, rùi cuối cùng cũng chưa ngã ngủ nè.
Vậy ý mấy huynh là sao đây? Đối với số Hex thì học thuộc như đệ hay là đếm theo quy cách (mỗi lần nhích một đơn vị) như các huynh khác bảo nè??
Theo ý đệ nên học thuộc, cũng dễ học thôi (Từ khi mở topic đến giờ đệ cũng học được đến phép nhân A rồi đó, chỉ còn B,C,D,E,F nữa làxong thui..hihihih)
:punk:

jiSh@n
06-11-2004, 05:03
Mạch cộng được tạo thành từ các mạch logic, bitwise cũng thế. Mạch bitwise ko được tạo thành từ mạch cộng.

Đối với Hex, thì phép cộng và trừ thực hiện tương tự như thập phân, chỉ khác là nhớ 10h thôi. Còn phép nhân thì có lẽ phải học thuộc lòng vậy.

phongnhattran
06-11-2004, 20:50
Mạch cộng được tạo thành từ các mạch logic, bitwise cũng thế. Mạch bitwise ko được tạo thành từ mạch cộng.

Đối với Hex, thì phép cộng và trừ thực hiện tương tự như thập phân, chỉ khác là nhớ 10h thôi. Còn phép nhân thì có lẽ phải học thuộc lòng vậy.

Ua, huynh nói chí phải. Học thuộc...học thuộc...học thuộc thôi :angel_not

anhkien
09-11-2004, 21:24
Neu cac ban can cach tinh so Hex thi lien lac voi minh qua Email: anhkien@yahoo.com, minh se chuyen Tai lieu toi cho cac ban....
Xin loi Mod vi minh chua cai Font Tieng Viet nen khong viet duoc tieng viet tren dien dan, lan sau chac chan se viet bang Tieng Viet :)

haitacvn
27-12-2004, 21:45
xin lỗi, nhưng mình thấy đúng là ban phongnhattran hơi cố chấp thì fải, fép tính đối với hệ HEX đâu có gì đâu, nó thì cung co 'qui tắc giống ai" thôi, nó cũng tương tự như các fép tính với hệ B,O,D vậy, sỏ dĩ cái dề của thầy giáo bạn trông choáng thi vi` ban chua có casio đó:), nhưng fải đồ xịn 1 chút vì dãy fép tính này có thê bj tràn mà

camlam06
27-12-2010, 09:05
Minh co mot cach tinh cong hai so hex nhu sau:
Quy tac la cong nhu hai so thap phan binh thuong. Neu phep cong o cot nao do >16 thi lay so do tru di 16, ta se lay hieu cua phep tru nay lam ket qua, khong can quan tam den so tru hay so bi tru gi het. Sau do cac ban +1 o cot co trong so cao hon ke no.
Vi du:
0F
+
26
----
35
Minh xin giai thich phep tinh nay nhu sau: Cac ban lay F+6 <=>15+6=21 dung khong. Ta nhan thay 21 > 16, nen ta lay 21-16=5 , day la con so dau tien o ket qua. Sau do ta lay 0+2=2, nhung theo quy tac tren, ta phai +1 o cot co trong so lon hon ke phep cong phan tu co tong >16 nay minh lam do. Nhu vay thi 2+1=3. Day la con so ke tiep o ket qua.
Vay ket qua cuoi cung la 35
Cac ban co the kiem chung bang cach chuyen qua so thap phan roi tinh tong, sau do lai chuyen lai ket qua xem co bang 35 khong.
Theo cach hoc cua minh la bat ky mot bai toan nao trong toan hoc deu co mot quy tac chung, khi ma chung ta nam duoc quy tac thi se lam duoc moi bai toan. O day minh nghi cac ban nen chon mot bai don gian nhat roi may mo cac phuong phap giai, khi thay dung het roi thi mo rong ra, cuoi cung ta hieu duoc phuog phap va lan sau khong con ngai ngan gi nua ma cu nham nhanh thoi.

[=========> Bổ sung bài viết <=========]

Minh co mot cach tinh cong hai so hex nhu sau:
Quy tac la cong nhu hai so thap phan binh thuong. Neu phep cong o cot nao do >16 thi lay so do tru di 16, ta se lay hieu cua phep tru nay lam ket qua, khong can quan tam den so tru hay so bi tru gi het. Sau do cac ban +1 o cot co trong so cao hon ke no.
Vi du:
0F
+
26
----
35
Minh xin giai thich phep tinh nay nhu sau: Cac ban lay F+6 <=>15+6=21 dung khong. Ta nhan thay 21 > 16, nen ta lay 21-16=5 , day la con so dau tien o ket qua. Sau do ta lay 0+2=2, nhung theo quy tac tren, ta phai +1 o cot co trong so lon hon ke phep cong phan tu co tong >16 nay minh lam do. Nhu vay thi 2+1=3. Day la con so ke tiep o ket qua.
Vay ket qua cuoi cung la 35
Cac ban co the kiem chung bang cach chuyen qua so thap phan roi tinh tong, sau do lai chuyen lai ket qua xem co bang 35 khong.
Theo cach hoc cua minh la bat ky mot bai toan nao trong toan hoc deu co mot quy tac chung, khi ma chung ta nam duoc quy tac thi se lam duoc moi bai toan. O day minh nghi cac ban nen chon mot bai don gian nhat roi may mo cac phuong phap giai, khi thay dung het roi thi mo rong ra, cuoi cung ta hieu duoc phuog phap va lan sau khong con ngai ngan gi nua ma cu nham nhanh thoi.

hadoantu
18-01-2011, 23:52
Có huynh nào biết các phép toán của số Hex (+, - , *, /...) chỉ đệ với.
Nếu có thể mỗi phép tính cho vài ví dụ về cách tính.
Có thể nếu các trường hợp đặc biệt khi tính toán với số Hex.
Cảm ơn.

Hệ Hex ( Hệ cơ số 16 )
1.)Phép cộng: ( cộng đến 16 thì tràn )
VD:
AFBC
1257 +
C213

{ kết quả >=16 thì tràn. ta lấy KQ - 16 nhớ 1
C+7= 19 >16 => 19-16=3 viết 3 nhớ 1
B+6= 17 >16 => 17-16=1 viết 1 nhớ 1...}

2.)phép trừ: ( a-b) {H}
+) a>b => trừ bình thường.
+) a<b => - (b-a)
VD:
A123
673F -
39E4

(a<b)
1FCD
3679-

=>
3579
1FCD-
-(15AC)


Note: nếu số trừ < số bị trừ ta mượn 16( như mượn 10 trong hệ 10 ) trả 1.ở ví dụ trên ta thấy :
3-F vì (3<15) => (3+16)-F= 4. mượn 16, trả 1
2-3 vì trả 1 => 2-4 vì (2<4) => (2+16)-4= 14=E. mượn 16 trả 1....

3.)Tính nhân: ( 16 tràn)
VD:
__AB
__CD*
_8AF
804
88EF

{cách tính:kq >=16 tràn. ta đem kq/16 viết dư, nhớ phần nguyên:
B*D=> 11*13=143 =>143/16= 8 dư(15).[143/16<=> 8*16=128 =>143-128=15=F nhớ 8]
D*A=> 13*10=130 =>130/16= 8 dư(2)+ nhớ 8 ở trên =10=A nhớ 8. [130/16
<=> 8*16=128 =>130-128= 8 dư(2). nhớ 8 ta viết vào kq => 8A4}

Hoặc bạn có thể dùng bảng cửu chương tính nhân hệ Hex:
http://upload.wikimedia.org/wikipedia/vi/4/42/Hexadecimal-multiplication-table.png
để tính nhanh hơn.

4.)Phép chia:( cũng thực hiện chia bình thường kq>=16 thì tràn)
VD:
AFBC/37=331
=>
AFBC !37
A5 ''' !331
-AB
_A5
_ 6C
__37
__35(dư)

{
3*7=21 > 16 tràn => 21/16=1 dư 5 viết 5 nhớ 1
3*3=9 nhớ 1 = 10 = A viết A.
AF-A5=A hạ B= AB chia tiếp AB/37...
...}

Nếu khó hiểu thì comment nha!