ËÒ¡ÁÕ¤Ó¶ÒÁ ¢ÍãËéä»â¾Êµìŧ àÇ纺ÍÃì´¨Õ·Ù¨Õà¹çµ´Íµ¤ÍÁ µÑÇãËÁèá·¹¹èФÃѺ

ËÃ×͵ԴµèÍà¢éÒÁÒ·Ò§ Inbox ·Õè à¿«ºØê¤ ¼Á¤ÃѺ

˹éÒËÅÑ¡
¢èÒÇÊÒà - º·¤ÇÒÁ ·Ñé§ËÁ´
VB 6/VB.Net
ASP/ASP.Net
¨Ñº©èÒ¤ÍÁ¾ÔÇàµÍÃì
àÃÕ¹ÃÙé¼èÒ¹ Flash Movie
º·¤ÇÒÁ·ÕèÁÕ¼ÙéµÍºÅèÒÊØ´  
 RSS Feeds
 ´ÒǹìâËÅ´â»Ãá¡ÃÁ RSS Reader ä´é·Õè¹Õè ...   Download â»Ãá¡ÃÁ RSS Reader

Forum - www.g2gnet.com
Webmaster - www.g2gnet.com
Visitors - Session views
 5 6 1 6 1 7 0

7 ¸Ñ¹ÇÒ¤Á ¾.È.2549
125 Users On-Line.
Visitors - Page views
 8 9 7 3 9 1 3
1 ¡ØÁÀҾѹ¸ì ¾.È.2551

Google   
àÇçº g2gnet.com
¢¹Ò´µÑÇÍÑ¡ÉÃ:  

¡ÒÃá»Å§àÅ¢°Ò¹ 10 à»ç¹àÅ¢°Ò¹ 16 áÅÐ àÅ¢°Ò¹ 2 à»ç¹àÅ¢°Ò¹ 16 (á¹Ç¤Ô´¢Í§ªèÒ§)

Category »  VB 6/VB.Net
â´Â : Webmaster àÁ×èÍ 23/11/2552   àÇÅÒ: 02:52
(ÍèÒ¹ : 135348) 
ÍÒÃÑÁÀº· ... ¹Ñºáµèà´ç¡ÁÒ ¼Áà»ç¹¤¹¤è͹¢éÒ§·Õè¨ÐàÃÕ¹à¡è§ ¾ÃéÍÁ·Ñé§ÁÕ¡Ô¨¡ÃÃÁ ¤×Í ¡ÒÃàÅè¹´¹µÃÕ (ÇèÒ§èÒÂæäÁèãªèà´ç¡àÃÕ¹ÍÂèÒ§à´ÕÂÇÅèФÃѺ) á¹è¹Í¹ÇèÒ»ÅÒ·ҧ ¤×Í ¡ÒÃàÍç¹ÊзéÒ¹ ... ¨Çº¨¹ÁÒ¶Ö§µÍ¹àµÃÕÂÁ¢Öé¹ Á.5 ¼Á¶Ö§ä´éà»ÅÕè¹á»Å§àÊé¹·Ò§¤ÃÑé§ÊӤѭ㹪ÕÇÔµ ´éÇ¡Òà "¶ÍÂËÅѧ" ÁÒ 1 »Õ à¾×èÍÂéÒÂÁÒàÃÕ¹ÊÒÂÍÒªÕ¾ ã¹ÊÒ¢ÒÍÔàÅç¡·Ã͹ԡÊì ... ¼ÁäÁèà¤Â¹Ö¡àÊÕÂã¨àÅÂÊÑ¡¤ÃÑé§ ã¹¡ÒõѴÊÔ¹ã¨ÂéÒÂÁÒàÃÕ¹ÊÒªèÒ§¢Í§¼Á ... à¾ÃÒФÇÒÁÃÙé·ÕèÃèÓàÃÕ¹ÁÒ Áѹä´é¶Ù¡¹ÓÁÒãªé·Ñé§ã¹Í´Õµ áÅÐ »Ñ¨¨ØºÑ¹ ... áÁéÇèÒ·Ñȹ¤µÔ áÅÐ ¤èÒ¹ÔÂÁ¢Í§¼Ù餹â´ÂÊèǹãË­è ÁÑ¡¨ÐÁͧÇèÒ¤¹¨ºÊÒªèÒ§ÁÒ ÀÙÁԻѭ­ÒÁѹ¹éÍ äÁèà¡è§·ÄÉ®Õ à¾ÃÒÐÍÂÙèã¹ÊÒ»¯ÔºÑµÔ ãªé¡ÓÅѧáç§Ò¹à»ç¹ËÅÑ¡ ÁÒ¡¡ÇèÒãªéÊÁͧ áµè ³ Çѹ¹Õé ¼Áá¤èàÈÉàÊÕéÂÇ˹Ö觢ͧ¤¹·Õ診ªèÒ§ÁÒ ¡çä´é¾ÔÊÙ¨¹ìãËéàËç¹ â´Â·Õèá·º¨ÐäÁèµéͧÁÒºÃÃÂÒÂÍÐäáѹÁÒ¡ÁÒ¹ѡ ... º·¤ÇÒÁªØ´¹Õé¨Ö§¢Í¹ÓàʹÍá¹Ç¤Ô´ ·Ñ¡ÉСÒû¯ÔºÑµÔ à¾×è͹ÓÁÒãªé§Ò¹ (ä´é¨ÃÔ§) ... à¹×èͧ¨Ò¡ÊÒ¢ÒÍÔàÅç¡·Ã͹ԡÊìµéͧàÃÕ¹ÇÔªÒ᡹ËÅÑ¡ÍÂèÒ§àªè¹ ǧ¨Ã´Ô¨ÔµÍÅ (¨ÃÔ§ ËÃ×Í à·ç¨/µÃáÈÒʵÃì) ÇÔªÒäÁâ¤Ãâ»Ãà«Êà«ÍÃì (à¨ÒÐÅÖ¡à¢éÒÊÙè¡Ò÷ӧҹ¢Í§¤ÍÁ¾ÔÇàµÍÃì) ·Ñé§ 2 ÇÔªÒ¹Õé ¡çÅéǹáÅéÇáµè¹Ó·Ò§ãËé¼ÁÊÒÁÒöà¢Õ¹â»Ãá¡ÃÁÀÒÉÒ Assembly áÅÐ C ä´éÍÂèÒ§¤Åèͧá¤ÅèÇã¹àÇÅÒµèÍÁÒ ...

¡ÒÃá»Å§àÅ¢°Ò¹ 10 à»ç¹àÅ¢°Ò¹ 16 (Visual Basic 6)
  • Dim X as String
  • X = Hex$(127)
    ¨ºáÅéÇ ... 55555+ ...
ËÒ¡¡Ã³Õ·ÕèµÑÇá»ÅÀÒÉÒ ÁѹäÁèÁÕ¤ÓÊÑè§ (ËÃ×Ϳѧ¤ìªÑè¹) áÅéǨзÓÍÂèÒ§äôÕÅèÐ ... ·ÓäÁèä´é¤ÃѺ (¤èÐ) ... ¡ç¡´à¤Ã×èͧàÅ¢àÍÒ«Ô¤ÃѺ ã¹ Windows ÁѹÁÕÁÒãËé´ÙÍÂÙèáÅéÇ (àÎéÍ ... â§è¨Ñ§âÇé ¤¹¶ÒÁà¹ÕèÂ) ... 55555+ ... ã¤ÃµÍºÁÒẺ¹Õé ¡çÍÂèÒÍèÒ¹º·¤ÇÒÁ¢Í§¼ÁµèÍä»àŹèФÃѺ ... ¡ÒÃá¡é»Ñ­ËÒ¡çÁÕá¹Ç¤Ô´áºº¡ÒÃá»Å§àÅ¢°Ò¹ 10 ä»à»ç¹àÅ¢°Ò¹ 2 Âѧ䧡çÂѧ§Ñé¹àŤÃѺ ... ¾Õè¹éͧ ... â´Â¤Ô´áºº¡ÒÃËÒÃÊÑé¹ ... (¤ÅÔê¡·Õè¹Õè ... à¾×èÍÍèÒ¹ÃÒÂÅÐàÍÕ´)
  • ãËé°Ò¹ 10 à»ç¹µÑǵÑé§ áÅéÇãªéàÅ¢°Ò¹·Õèµéͧ¡ÒÃà»ç¹µÑÇËÒà (àªè¹ 2 ËÃ×Í 16)
      ¡ÒÃËÒÃÁÕ 2 Ẻ
    • ¡ÒÃËÒÃàÍÒàÈÉ (MOD) ¼ÅÅѾ¸ì¨ÐÍÍ¡ÁÒà»ç¹¤ÓµÍº
    • ¡ÒÃËÒõѴàÈÉ (Div) ä»àÃ×èÍÂæ ¨¹¡ÇèҨзÓãËé¼ÅÅѾ¸ìÊØ´·éÒÂà»ç¹ 0

àÅ¢°Ò¹ÊÔº

àÅ¢°Ò¹Êͧ

àÅ¢°Ò¹ÊԺˡ

0

0000

0

1

0001

1

2

0010

2

3

0011

3

4

0100

4

5

0101

5

6

0110

6

7

0111

7

8

1000

8

9

1001

9

10

1010

A

11

1011

B

12

1100

C

13

1101

D

14

1110

E

15

1111

F

à¹×èͧ¨Ò¡µÑé§áµè¤èÒ 10 - 15 (°Ò¹ 16) ÁѹÁÕµÑÇàÅ¢ (Digit) ¢¹Ò´ 2 ËÅÑ¡ ¨Ö§äÁèàËÁÒÐÊÁ㹡ÒÃãªé§Ò¹ ... à¢Ò (¼Ùé·Õè¤Ô´) ¨Ö§ãªéµÑÇÍÑ¡¢ÃÐ (Character) A - F á·¹¨Ó¹Ç¹´Ñ§¡ÅèÒÇ·ÕèÇèÒÁÒ¤ÃѺ ... ¾Õè¹éͧ
    àÅ¢°Ò¹ÁËÑȨÃÃÂì ... àÅ¢°Ò¹ã´æ¨ÐÁÕ¤èÒµèÓÊØ´ = 0 áÅШÐÁÕ¤èÒÊÙ§ÊØ´à·èҡѺ°Ò¹¹Ñ鹿 - 1 àÊÁÍ àªè¹
  • àÅ¢°Ò¹ 10 ¨ÐÁÕ¤èÒ 9 à»ç¹¤èÒÊÙ§ÊØ´ (10 - 1 = 9)
  • àÅ¢°Ò¹ 2 ¨ÐÁÕ¤èÒ 1 à»ç¹¤èÒÊÙ§ÊØ´ (2 - 1 = 1)
  • àÅ¢°Ò¹ 8 ¨ÐÁÕ¤èÒ 7 à»ç¹¤èÒÊÙ§ÊØ´ (8 - 1 = 7)
  • àÅ¢°Ò¹ 16 ¨ÐÁÕ¤èÒ 15 à»ç¹¤èÒÊÙ§ÊØ´ (16 - 1 = 15)
    à¡ÕèÂÇ¢éͧÍÐäà ¡ç¤Ô´æàͧ¡Ñ¹ºéÒ§à¶ÍйèФÃѺ ... 55555+
¿Ñ§¤ìªÑè¹ ËÃ×Í â»Ãá¡ÃÁÂèÍÂ㹡ÒÃá»Å§àÅ¢°Ò¹ 10 à»ç¹°Ò¹ 16 ´éÇÂÇÔ¸Õ¡ÒÃËÒÃÊÑé¹

' ==============================================================
Function Decimal2HexaDecimal(Dec As Long) As String
' ==============================================================
Dim Hex As String
    ' à§×è͹ä¢ÊØ´·éÒ ·Ó¨¹¡ÇèÒ Dec = 0 ¡çãË騺¡Ãкǹ¡Òà (True) ÍÍ¡¨Ò¡Ç§Ãͺ Do ... While
    Do While (Dec > 0)
        ' Mod ´éÇÂÍÐäà ¡ç¨Ðä´é¤èÒÊÙ§ÊØ´ (·Õèà»ç¹ä»ä´é) ¢Í§µÑÇ Mod ź´éÇ 1 àÊÁÍ
        ' ´Ñ§¹Ñé¹àÁ×èÍàÍÒ 16 (°Ò¹ 10) ÁÒ Mod ·ÓãËé¤èÒÊÙ§ÊØ´·Õèä´é (16 - 1) = 15 ¹Ñè¹àͧ
        ' à§×è͹ä¢ã¹¡Òôѡ¤èÒµÑé§áµè 10 áµèäÁèà¡Ô¹ 15 à¾ÃÒÐ 10 á·¹¤èÒ´éÇ A (°Ò¹ 16)
        ' 11 = B (°Ò¹ 16) áÅÐä»àÃ×èÍÂæ¨¹ 15 = F (°Ò¹ 16)
        Select Case (Dec Mod 16)
            Case 10
                Hex = "A" & Hex
            Case 11
                Hex = "B" & Hex
            Case 12
                Hex = "C" & Hex
            Case 13
                Hex = "D" & Hex
            Case 14
                Hex = "E" & Hex
            Case 15
                Hex = "F" & Hex
            
            ' µÑé§áµè 0 - 9 ÁÒ»ÃÐÁÇżŷÕèµÃ§¹Õé¤ÃѺ ... (ÃѺÃͧ¡Òà Mod ´éÇ 16 ÂÑ§ä§æ Áѹ¡çäÁèÁÕ¤èÒà¡Ô¹ 15 ä»ä´éËÃÍ¡)
            ' Êѧࡵ´éǤÃѺ ·ÓäÁ¼ÁàÍÒà§×è͹䢤èÒÃÐËÇèÒ§ 0 - 9 ÁÒÇÒ§äÇéã¹ Case Else .. (ÁѹäÁèÁÕ¤èÒÍ×è¹ÍÕ¡áÅéÇàËÃÍ).
            Case Else
                
                ' à¡çº¤èҤӵͺ¢Í§¡ÒÃËÒÃàÍÒàÈÉ (MOD) ... àÃÕ§ÅӴѺãËé¶Ù¡µéͧ´éǹèФÃѺ
                Hex = (Dec Mod 16) & Hex
                
        End Select
        
        ' ËÒõѴàÈÉ (Div) ¨¹¡ÇèÒ¨Ðä´é 0 ... à¾×èÍãªéà»ç¹à§×è͹ä¢ã¹¡ÒÃǹÃͺ Do ... While
        Dec = Dec \ 16
    
    Loop

    ' Ê觤èҤ׹¡ÅѺã¹áºº String à¾ÃÒÐàÅ¢°Ò¹ 16 ÁѹÁÕµÑÇÍÑ¡¢ÃÐ A - F
    Decimal2HexaDecimal = Hex
    
End Function
àËç¹á¹Ç¤Ô´áºººéÒ¹æËÃ×ÍÂѧ¤ÃѺ äÁèÇèҤس¨Ðá»Å§àÅ¢°Ò¹ 10 ä»à»ç¹àÅ¢°Ò¹ã´æ ¡ç¨Ðãªé Algorithm ËÅÑ¡æàËÁ×͹¡Ñ¹ËÁ´àÅ ... ¹ÕèáËÅФÃѺẺ©ºÑºªèÒ§ (ËÑÇÁѹ) ¢Í§¼Á ... à¾ÃÒмÁäÁèä´éÍéÒ§ÍÔ§Êٵà ¡Òá¡ÓÅѧ ËÃ×ÍãªéÊÁ¡ÒÃã´æà¢éÒÁÒà¡ÕèÂÇ¢éͧ áµèá¡é»Ñ­ËÒ⨷Âì¢é͹Õéä´é´éǤÇÒÁÃÙéàÃ×èͧ¡ÒÃËÒÃÊÑé¹ (ã¹ÃдѺ»ÃжÁ) ·Õ¹ÕéÃÙéËÃ×ÍÂѧÅèÐÇèÒàÃÒàÃÕ¹¾×é¹°Ò¹¡Ñ¹ÁÒ·ÓäÁ ... àÃÕ¹ÁÒà¾×èÍ»ÃÐÂØ¡µìãªéãËéà»ç¹ä§ÅèФÃѺ ... Âѧæ¤ÃѺÂѧäÁèËÁ´ ÂѧÁÕÍÕ¡ àÍҡѹãËéªÑ´æÂÔè§¡ÇèÒ¹Õé ÇèÒá¹Ç¤Ô´ºéÒ¹æ¢Í§ªèÒ§ÍÔàÅç¡·Ã͹ԡÊ줹˹Öè§ ¨Ðá»Å§àÅ¢°Ò¹ 2 ãËé¡ÅÒÂà»ç¹àÅ¢°Ò¹ 16 ä´éÍÂèÒ§äà ...
´ÒǹìâËÅ´
´ÒǹìâËÅ´ Source Code ÊÓËÃѺ MS Visual Basic 6.0 - Service Pack 6
 ´ÒǹìâËÅ´ Visual Basic 6.0 SP5: Run-Time Redistribution Pack
 ´ÒǹìâËÅ´ Microsoft Data Access Object (MDAC) áÅÐ Jet 4.0 Update
 ´ÒǹìâËÅ´ Microsoft Visual Basic Service Pack 6
¢éÍÁÙÅà¾ÔèÁàµÔÁ
ÇÔ¸Õ¡ÒäԴ¡ÑºµÑÇàÅ¢¨Ó¹Ç¹àµçÁ
¡ÒÃá»Å§àÅ¢°Ò¹ 16 à»ç¹àÅ¢°Ò¹ 2 áÅÐ àÅ¢°Ò¹ 10 - VB6
â¤é´áÅÐá¹Ç¤Ô´¡ÒÃá»Å§àÅ¢°Ò¹ 10 à»ç¹°Ò¹ 2 àÃ×èͧËÁÙæ ... äÁèºÍ¡¡çá·º¨ÐäÁèÃÙé¡Ñ¹àÅÂ
àÃ×èͧ¢Í§â»Ãá¡ÃÁÂèÍ (ÍÕ¡·Õ) ... Sub Program, Routine, Procedure ËÃ×Í Function
µÃǨÊͺ¡Òá´á»é¹¤ÕÂìºÍÃì´à¾×èÍãËéÃѺ¤èÒ੾ÒеÑÇàÅ¢ áÅÐ ¨Ø´·È¹ÔÂÁà·èÒ¹Ñé¹ (VB6)
µÃǨÊͺ¡Òá´á»é¹¤ÕÂìºÍÃì´à¾×èÍãËéÃѺ¤èÒ੾ÒеÑÇàÅ¢ (VB.Net)


Design Time


Run Time

¨Ò¡µÒÃÒ§´éÒ¹º¹ ... ãËéÊѧࡵ¹èФÃѺÇèÒ àÅ¢°Ò¹ 16 ¹Ñé¹ àÃÒÊÒÁÒö᷹·ÕèÁѹ´éÇÂàÅ¢ Binary (°Ò¹ 2) ¨Ó¹Ç¹¢¹Ò´ 4 ºÔµ
    Çèҡѹ§èÒÂæ àÅ¢ Binary ¨Ó¹Ç¹¢¹Ò´ 4 ºÔµ ÊÒÁÒö᷹àÅ¢°Ò¹ 16 ä´é¤Ãº¾Í´ÕàÅ ...
  • 1 x 23 + 1 x 22 + 1 x 21 + 1 x 20 ... ¹Ô¾¨¹ìÍѹ¹ÕéàËç¹·Õµéͧä»ËҢش¤Øé¡ѹàÍÒàͧ¹èФÃѺ à¾ÃÒмÁ¨Ð¡ÅèÒǶ֧¡ÒùÓàÅ¢ Binary 4 ºÔµ ÁÒá»Å§à»ç¹°Ò¹ 16
  • 0  0  0  0 = 0
  • 0  0  0  1 = 1
  • 0  0  1  0 = 2
  • 0  1  0  0 = 4
  • ä»àÃ×èÍ ...
  • 1  1  1  0 = E (ËÃ×Í 14 °Ò¹ 10)
  • 1  1  1  1 = F (ËÃ×Í 15 °Ò¹ 10)

àÁ×èͤԴä´é´Ñ§¹ÕéáÅéÇ ... ¼Á¨Ð¨Ñ´¡ÅØèÁàÅ¢ Binary (°Ò¹ 2) ÍÍ¡à»ç¹ªØ´æÅÐ 4 ºÔµ â´ÂãËé ¹Ñº¨Ò¡¢ÇÒ仫éÒ (ǧÃͺ For) ... áµèÇÔ¸Õ¡Òà ÍèÒ¹¤èÒµÓá˹觢ͧºÔµ«éÒÂÁ×ÍÊØ´ ¢Í§·Ø¡æªØ´ ¼Á¨Ðãªé¡Òà ÍèÒ¹¤èÒµÓá˹觨ҡ«éÒÂ仢ÇÒá·¹ (à§×èÍ¹ä¢ IF à»ç¹à·ç¨ ËÃ×Í Else ¹Ñè¹áËÅÐ)
    àªè¹ àÅ¢ 257 (°Ò¹ 10) ¨Ð¡ÃШÒÂàÅ¢ Binary ä´é¤×Í 1 0 0 0 0 0 0 0 1
  • 1 0 0 0 0 0 0 0 1 ... ¡ÒÃáºè§ªØ´àÅ¢ Binary ªØ´ÅÐ 4 ºÔµ
  • 1 2 3 4 5 6 7 8 9 ... àÇÅҤӹdzËÒµÓá˹觢ͧºÔµ«éÒÂÁ×ÍÊØ´ ã¹áµèÅЪش ¼Á¨Ð¾Ô¨ÒóÒËÅÑ¡ 6 áÅÐ ËÅÑ¡ 2 (¡ÒÃÍèÒ¹µÓá˹觨ҡ«éÒÂ仢ÇÒ)
      Åͧ´Ù¨Ò¡â¤é´´éÒ¹ÅèÒ§»ÃСͺ áÅÐãªé¤èÒ 257 (°Ò¹ 10) à»ç¹¤èÒ·´Êͺ
    • Ãͺ·Õè 1 ¤ÓÊÑè§ For Count = Len(BinaryBase) To 1 Step -4 ... ·ÓãËé Count ÁÕ¤èÒà·èҡѺ 9 (¤ÇÒÁÂÒǢͧ¨Ó¹Ç¹ºÔµ ËÃ×Í Len(BinaryBase))
    • ·ÓãËé Bit = Mid$(BinaryBase, Count - 3, 4) ËÃ×Í Mid$("100000001", 9 - 3 = 6, 4) = 0001 (ºÔµ 0 ÊÕá´§ ¤×͵Óá˹觷Õè¹Ñº¨Ò¡·Ò§«éÒÂÁ×ÍÁÒ 6 µÓáË¹è§ ... ¨Ò¡¹Ñé¹ãËé¹ÑºµèÍä»·Ò§¢ÇÒÍÕ¡ 4 ºÔµ
    • Ãͺ·Õè 2 ¤ÓÊÑè§ For Count = Len(BinaryBase) To 1 Step -4 ... ·ÓãËé Count Å´¤èÒŧ 4 (Step -4) ¨Ö§ÁÕ¤èÒà·èҡѺ 9 - 4 = 5
    • ·ÓãËé Bit = Mid$(BinaryBase, Count - 3, 4) ËÃ×Í Mid$("100000000", 5 - 3 = 2, 4) = 0000 (ºÔµ 0 ÊÕá´§ ¤×͵Óá˹觷Õè¹Ñº¨Ò¡·Ò§«éÒÂÁ×ÍÁÒ 2 µÓáË¹è§ ... ¨Ò¡¹Ñé¹ãËé¹ÑºµèÍä»·Ò§¢ÇÒÍÕ¡ 4 ºÔµ
  • 1 ... ¡Ã³Õ¢Í§ªØ´ÊØ´·éÒ ËÒ¡ÁÕºÔµäÁè¤Ãº 4 ºÔµ ... ãªéÇÔ¸Õ¡ÒÃà¾ÔèÁºÔµ 0 à¢éÒä»ãËé¤Ãº (à§×èÍ¹ä¢ IF à»ç¹¨ÃÔ§)
      àªè¹ ...
    • »ÃѺ¢¹Ò´ºÔµãËé¤Ãº 4 ºÔµ â´ÂàÍÒºÔµÁÒàÃÕ§¡Ñ¹ áÅéǹѺÁÒ¨Ò¡·Ò§¢ÇҤ׹¡ÅѺÁÒ 4 µÑÇ ...
    • "0000" & "1" ... »¡µÔ¡çä´é¡ÒÃàÃÕ§ºÔµ ´Ñ§¹Õé "00001"
    • ¾Íãªé Right("0000" & "1", 4) ... à¾×èÍãËé¹Ñº¨Ò¡·Ò§¢ÇÒä» 4 ËÅÑ¡ ... ¤ÓµÍº ¤×Í "0001"
ÊÔè§µèÒ§æ·Õèä´éàËç¹·Ò§´éÒ¹º¹ ¤×Í ¡ÒäԴÍ͡ẺàÍÒäÇé áÅéÇÅͧ·´Êͺ¤èÒŧ㹡ÃдÒÉ ¼ÊÁ¼ÊÒ¹¡Ñº¡ÒÃà¢Õ¹¼Ñ§§Ò¹ÍÍ¡ÁÒ´Ù ... ËÒ¡äÁè·ÓÍÂèÒ§¹Õé ¡çÂÒ¡·Õè¨Ðà¢Õ¹â»Ãá¡ÃÁÍÍ¡ÁÒà¾×èÍãËéÁÕ¼ÅÅѾ¸ì·Õè¶Ù¡µéͧä´é ... ¢ÍÂéÓÍÕ¡¤ÃÑé§ÊÓËÃѺ¼Ùé·Õè¤Ô´¨ÐàÍÒ´Õ·Ò§´éÒ¹¹Õé ...

¡ÒÃá»Å§àÅ¢°Ò¹ 2 ä»à»ç¹àÅ¢°Ò¹ 16 ... ´éÇÂÇÔ¸Õ¡ÒùѺ¨Ó¹Ç¹ºÔµ ¤ÃÑé§ÅÐ 4 ºÔµ

' ==============================================================
' á»Å§àÅ¢°Ò¹ 2 à»ç¹àÅ¢°Ò¹ 16 ... â´Â·Ó¡ÒäԴàÅ¢°Ò¹ 2 ¤ÃÒÇÅÐ 4 ºÔµ
Function Binary2HexaDecimal(BinaryBase As String) As String
' ==============================================================

Dim Count As Integer    ' ¹Ñº¨Ó¹Ç¹ºÔµ¤ÃÒÇÅÐ 4 ºÔµ
Dim Bit As String           ' ¹Óä»á»Å§à»ç¹àÅ¢°Ò¹ 16
Dim Hex As String         ' à¡çº¤èÒ·Õèá»Å§à»ç¹àÅ¢°Ò¹ 16 à¾×è͹ÓÁÒàÇÕ¹ãªé§Ò¹
    
    
    ' àÅ×Í¡ÁÒà»ç¹ªØ´æÅÐ 4 ºÔµ µéͧ¹Ñº¨Ò¡·Ò§¢ÇÒÁ×ÍÁÒ¹èФÃѺ (LSB)
    ' ã¹°Ò¹ 10 ¡çàËÁ×͹äÅè¨Ò¡ËÅÑ¡¾Ñ¹ ËÅÑ¡ÃéÍ ËÅÑ¡ÊÔº ËÅѡ˹èÇ (µÒÁ»¡µÔªÕÇÔµ·Õè¤Øé¹à¤Â¡ÑºµÑÇàÅ¢)
    ' Count ¨ÐÅ´¤èÒŧ·ÕÅÐ 4 ¤ÃѺ ... ¹Ñº¨Ó¹Ç¹¤ÇÒÁÂÒǢͧ¨Ó¹Ç¹ºÔµ áÅéÇÅ´¤èÒŧ·ÕÅÐ 4 ºÔµ
    For Count = Len(BinaryBase) To 1 Step -4
        
        ' ¡Ã³Õº×µ·Ò§«éÒÂÁ×ÍÁѹÁÕ¢¹Ò´äÁè¤Ãº 4 ºÔµ ... ÍÒÈÑ¡ÒÃàµÔÁ 0 à¢éÒ仫פÃѺ
        ' àªè¹ 1 0000 0001 ...
        ' ¡ÒÃǹÃͺ¤ÃÑé§ÊØ´·éÒ ¨Ð·ÓãËé¤èÒ 1 «Öè§à»ç¹ºÔµ·ÕèÍÂÙè«éÒÂÁ×ÍÊØ´ (MSB) àËÅ×͵ÑÇà´ÕÂÇâ´´æ
        ' 㹡óշÕèäÁèä´é¤èҨӹǹºÔµà»ç¹ 4, 8, 12, 16, 20,  ... ä»àÃ×èÍÂæ (¡ÒÃËÒôéÇ 4 ŧµÑǾʹÕ)
        If Count < 4 Then
            ' ===========================================================
            ' »ÃѺ¢¹Ò´ºÔµãËé¤Ãº 4 ºÔµ â´ÂàÍÒºÔµÁÒàÃÕ§¡Ñ¹ áÅéǹѺÁÒ¨Ò¡·Ò§¢ÇҤ׹¡ÅѺÁÒ 4 µÑÇ ...
            ' "0000" & "1" ... »¡µÔ¡çä´é¡ÒÃàÃÕ§ºÔµ ´Ñ§¹Õé  "00001"
            ' ¾Íãªé Right("0000" & "1", 4) ... ¤ÓµÍº ¤×Í "0001"
            Bit = Right$("0000" & Mid$(BinaryBase, 1, Count), 4)
            ' ===========================================================
        
        Else
            
            ' ===========================================================
            ' ¤èÍÂæäÅèËÒÇÔ¸Õ¡ÒäԴ¹èФÃѺ ...
            ' ÊÁÁصÔËÒ¤èÒ 257 (°Ò¹ 10) ËÃ×Í  1 0 0 0 0 0 0 0 1 (°Ò¹ 2)
            ' ·ÓãËéä´é¤ÇÒÁÂÒÇ·Ñé§ËÁ´ 9 ºÔµ (Count = 9) ... ãËéźÍÍ¡´éÇ 3 à¾ÃÒÐ ...
            ' 1 2 3 4 5 6 7 8 9 (¹ÑºËÅÑ¡)
            ' 1 0 0 0 0 0 0 0 1
            ' -----------x------- ... ¼Áµéͧ¡ÒõѴºÔµ¢ÇÒÁ×Í 3 ºÔµÍÍ¡ ¨Ö§·ÓãËéźáÅéÇä´éµÓáË¹è§ x ¾Í´Õ
            ' ´Ñ§¹Ñé¹ÃͺááàÃÔèÁ 9 - 3 = 6 ... ãËéÅͧ¹Ñº´Ù¤ÃѺÇèÒ¨ÐàÃÔèÁÍèÒ¹¨Ò¡ËÅÑ¡·Õè 6 ¾Í´Õ ¹Ñº¨Ò¡«éÒÂÁ×͹èФÃѺ
            ' ¨Ø´¹ÕéÊӤѭÁÒ¡¤ÃѺ ... ¢ÍãËéäÅè¡Ò÷ӧҹ´éÇ¡Òá´ F8 ·´Êͺ´Ù
            ' àÁ×èÍãªé Mid$(¢éͤÇÒÁ, àÃÔèÁµé¹¨Ò¡ËÅÑ¡·Õè, ¹Ñºä» 4 µÑÇ) ...
            ' Áѹ¨ÐÁըӹǹºÔµà¢éÒÁÒà·èÒäà ¡çäÁèÁջѭËҡѺá¹Ç¤Ô´¢Í§Í´ÕµªèÒ§ (ËÑÇÁѹ) Ẻ¼Á ...
            Bit = Mid$(BinaryBase, Count - 3, 4)
            ' ===========================================================
        
        End If
        
        ' ä´éÁҤú 4 ºÔµáÅéÇ¡ç·Ó¡ÒÃà»ÃÕºà·Õº¤èÒ
        Select Case Bit
            Case "0000"
                Hex = "0"
            Case "0001"
                Hex = "1"
            Case "0010"
                Hex = "2"
            Case "0011"
                Hex = "3"
            Case "0100"
                Hex = "4"
            Case "0101"
                Hex = "5"
            Case "0110"
                Hex = "6"
            Case "0111"
                Hex = "7"
            Case "1000"
                Hex = "8"
            Case "1001"
                Hex = "9"
            Case "1010"
                Hex = "A"
            Case "1011"
                Hex = "B"
            Case "1100"
                Hex = "C"
            Case "1101"
                Hex = "D"
            Case "1110"
                Hex = "E"
            Case "1111"
                Hex = "F"
        End Select
        
        ' ¨Ñ´àÃÕ§¡ÒÃáÊ´§¼Å áÅÐ Ê觤èҤ׹¡ÅÑºä» (Ẻ String)
        Binary2HexaDecimal = Hex & Binary2HexaDecimal
        
    Next
    
End Function
    

ÇÔ¸Õ¡ÒÃ Debug Program
Conclusion:
¼ÁÂÍÁÃѺ ... â¤é´Áѹ´ÙÂÒ¡ ... â´Â੾ÒÐà§×èÍ¹ä¢ Bit = Mid$(BinaryBase, Count - 3, 4) ... ¡çà¾ÃÒмÁäÁèä´éà¢Õ¹ Flow Chart ÍÍ¡ÁÒãËé´Ù «Öè§¾Õè¹éͧµéͧ½Ö¡¤Ô´¾Ô¨ÒóҵÒÁä»´éǤÃѺ ÁѹÁÕÇÔ¸Õ¡ÒÃà¢Õ¹â¤é´ÍÍ¡ÁÒä´éËÅÒÂẺ ËÅÑ¡æ¡ç˹Õ仾鹵ÑÇÍÂèÒ§ (¢Í§¨ÃÔ§) ·Õè·ÓäÇéãËé´ÙËÃÍ¡¤ÃѺ à¾Õ§áµè¼ÁÃǺÃÑ´¤ÓÊÑè§ãËéä´éÊÒÃÐÊӤѭ ⨷Âì»ÃÐàÀ·¹Õé¼ÁÁÕàÍÒäÇéÊ͹¾Ç¡ÃдѺ½Ö¡ËÑ´ (Ê͹ã¹ËÅÑ¡ÊÙµÃẺ¾×鹿 ੾ÒÐá»Å§àÅ¢°Ò¹ä»ÁÒà¹Õè àÅ蹡ѹà»ç¹à·ÍÁÂѧä´éàÅÂ) ... Åͧ«ÔËÒ¡¤Ø³äÁèÍ͡Ẻŧº¹¡ÃдÒÉÁÒ«èСè͹ ¡çÂÒ¡·Õè¨Ðà¢Õ¹â¤é´ÍÍ¡ÁÒä´é¤ÃѺ ... ·Õèá¹èæ¼Áãªéá¹Ç¤Ô´ áÅÐ à¢Õ¹¢Öé¹ÁÒ¨Ò¡ÀÒÉÒ C ÁÒ¡è͹ ¹Ñºä´é 10 ¡ÇèÒ»ÕáÅéÇ ¡ç·Ó§Ò¹ä´éàªè¹à´ÕÂǡѹ à¾ÃÒÐ Algorithm ¹Õéá·ºäÁèä´éà¡ÕèÂǡѺÀÒÉÒâ»Ãá¡ÃÁ·ÕèãªéàŤÃѺ ... ¾Õè¹éͧ ... »ÃÐà´ç¹·ÕèÍÂÒ¡ªÕéãËéàËç¹ÍÕ¡ÍÂèÒ§àÅÂÇèÒ ¼ÁäÁèä´é¹ÓËÅÑ¡¡ÒäԴ·Ò§µÑÇàÅ¢ÁÒà¡ÕèÂÇ¢éͧàÅ ... ÍÒÈÑ¡ÒÃãªé§Ò¹¨ÃÔ§Åéǹæ¤ÃѺ ... ¾Õè¹éͧ
¨Õ ·Ù ¨Õ à¹çµ ´Íµ ¤ÍÁ - g2gNet Dot Com
àÅ¢·ÐàºÕ¹¾Ò³ÔªÂìÍÔàÅç¡·Ã͹ԡÊì 0407314800231
CopyLeft © 2004 - 2099 g2gNet.Com All rights reserved.
Email: [email protected] ËÃ×Í â·Ã. 08-6862-6560