home
         การแปลงเลขฐานจาก ฐาน 16 เป็น เลขฐาน 10 ด้วย VB.NET2008

โจทย์การแปลงเลขฐานเป็นโจทย์ที่มักพบบ่อยในการเรียนการสอนของนักศึกษาวิทยาการคอมพิวเตอร์
      การแปลงเลขฐาน16 ให้เป็นเลขฐาน 10 ทำได้โดยวิธีการคูณตัวเลขฐาน 16 ในแต่ละหลักด้วยค่าประจำตำแหน่ง แล้วนำผลลัพธ์ที่ได้มารวมกัน จะได้เป็นค่าของเลขฐานสิบ

ต.ย. (FE)16 มีค่าเท่าใร่ในฐานสิบ
                  F = 15 , 15*16^1 = 240
                  E = 14 , 14*16^0 = 14
                  F + E = 240 + 14
                  254
                  (FE)16
= (254)10


ออกแบบหน้าจอโปรแกรมดังรูป



เข้าไปที่หน้า Code แล้วสร้างฟังก์ชัน

Private Function HEX_to_DEC(ByVal h As String)
Dim n As Integer

Dim L As Integer = h.Length
Dim k As Integer
Dim M As Integer

For i As Integer = 1 To L
Dim j As String
j = Mid(h, i, 1)

If j = "F" Or j = "f" Then
k = 15
ElseIf j = "E" Or j = "e" Then
k = 14
ElseIf j = "D" Or j = "d" Then
k = 13
ElseIf j = "C" Or j = "c" Then
k = 12
ElseIf j = "B" Or j = "b" Then
k = 11
ElseIf j = "A" Or j = "a" Then
k = 10
ElseIf j = "9" Then
k = 9
ElseIf j = "8" Then
k = 8
ElseIf j = "7" Then
k = 7
ElseIf j = "6" Then
k = 6
ElseIf j = "5" Then
k = 5
ElseIf j = "4" Then
k = 4
ElseIf j = "3" Then
k = 3
ElseIf j = "2" Then
k = 2
ElseIf j = "1" Then
k = 1
ElseIf j = "0" Then
k = 0
End If

M = k * Math.Pow(16, L - i)
n += M

Next i
Return n

End Function


จากนั้นก็เขียนคำสั่งในปุ่ม OK หรือ ปุ่มตกลง

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
      
         Label1.Text = HEX_to_DEC(TextBox1.Text)

End Sub



        
 

| กลับหน้าหลัก | VB.NET อ่านเนื้อหาทั้งหมด | อ่านบทความถัดไป |

 

 

 

www.PhuetBulletin.co.th - ภูเก็ต ท่องเที่ยว หางาน อาหารภูเก็ต แฟชั่น Workflow Management
THE-THAN.COM สินค้าดีๆ มีให้เข้ามาดู
เว็บเพื่อนบ้าน ทั้งหมด

 

 
 

 

 

Site Meter

     คุณสามารถติชม เว็บได้ที่เว็บบอร์ด นะครับ

      สวัสดีครับทุกท่าน ผมพัฒนาเว็บนี้ขึ้นมาโดยมีวัตถุประสงค์ ที่จะเห็นโปรแกรมเมอร์ของไทย ได้มีการคิดค้นและพัฒนาซอฟต์แวร์ ของคนไทย กันมากขึ้น เพื่อเป็นการช่วยชาติของเราให้เจริญยิ่งขึ้นไป (จะได้ไม่ต้องทะเลาะกันอย่างทุกวันนี้ 555 อย่าเครียดครับ ) เนื่องจากเว็บนี้ยังเพิ่งเริ่มต้นนะครับอาจมีเนื้อหาบางงส่วนที่ยังไม่สมบูรณ์จึงขออภัยมา ณ โอกาส นี้ด้วยครับ
      คุณสามารถแนะนำหรือติชมเกี่ยวกับเว็บนี้ได้นะครับ เพื่อทางเราจะได้นำไปปรับปรุงแก้ไขให้เว็บดียิ่งขึ้นนะครับ
home