@@ -4,11 +4,19 @@ Begin VB.Form Form1
44 ClientHeight = 8655
55 ClientLeft = 120
66 ClientTop = 465
7- ClientWidth = 13320
7+ ClientWidth = 13455
88 LinkTopic = "Form1"
99 ScaleHeight = 8655
10- ScaleWidth = 13320
10+ ScaleWidth = 13455
1111 StartUpPosition = 3 'Windows-Standard
12+ Begin VB.CommandButton Command8
13+ Caption = "Conversion 16-32-64"
14+ Height = 375
15+ Left = 11520
16+ TabIndex = 8
17+ Top = 120
18+ Width = 1815
19+ End
1220 Begin VB.CommandButton Command7
1321 Caption = "Command7"
1422 Height = 375
@@ -186,18 +194,18 @@ Private Sub Command6_Click()
186194 If Not MUnsigned.UInt16_TryParse(sVal, i, 16 ) Then Exit Sub
187195 s = s & "s: " & sVal & " = v: " & MUnsigned.UInt16_ToStr(i) & vbCrLf
188196
189- Dim L As Long
197+ Dim l As Long
190198 sVal = "10101010101010101010101010101010"
191- If Not MUnsigned.UInt32_TryParse(sVal, L , 2 ) Then Exit Sub
192- s = s & "s: " & sVal & " = v: " & MUnsigned.UInt32_ToStr(L ) & vbCrLf
199+ If Not MUnsigned.UInt32_TryParse(sVal, l , 2 ) Then Exit Sub
200+ s = s & "s: " & sVal & " = v: " & MUnsigned.UInt32_ToStr(l ) & vbCrLf
193201
194202 sVal = "1234567890"
195- If Not MUnsigned.UInt32_TryParse(sVal, L , 10 ) Then Exit Sub
196- s = s & "s: " & sVal & " = v: " & MUnsigned.UInt32_ToStr(L ) & vbCrLf
203+ If Not MUnsigned.UInt32_TryParse(sVal, l , 10 ) Then Exit Sub
204+ s = s & "s: " & sVal & " = v: " & MUnsigned.UInt32_ToStr(l ) & vbCrLf
197205
198206 sVal = "ABCDEF98"
199- If Not MUnsigned.UInt32_TryParse(sVal, L , 16 ) Then Exit Sub
200- s = s & "s: " & sVal & " = v: " & MUnsigned.UInt32_ToStr(L ) & vbCrLf
207+ If Not MUnsigned.UInt32_TryParse(sVal, l , 16 ) Then Exit Sub
208+ s = s & "s: " & sVal & " = v: " & MUnsigned.UInt32_ToStr(l ) & vbCrLf
201209
202210 Text1.Text = s
203211End Sub
@@ -219,16 +227,65 @@ Catch:
219227 MsgBox "Error: " & Err.Number & vbCrLf & Err.LastDllError & vbCrLf & Err.Description
220228End Sub
221229
230+ Private Sub Command8_Click ()
231+ Dim i As Integer
232+ Dim l As Long
233+ Dim c As Currency
234+ Dim s As String
235+ i = 12345 :
236+ s = s & "i = " & i & vbCrLf
237+
238+ l = MUnsigned.UInt16_ToUInt32(i)
239+ s = s & "l = MUnsigned.UInt16_ToUInt32(i)" & vbCrLf
240+ s = s & "l = " & l & vbCrLf
241+
242+ c = MUnsigned.UInt16_ToUInt64(i)
243+ s = s & "c = MUnsigned.UInt16_ToUInt64(i)" & vbCrLf
244+ s = s & "c = " & c & vbCrLf
245+
246+
247+ i = 0 : c = 0
248+ l = 12345
249+ s = s & "l = " & l & vbCrLf
250+
251+ i = MUnsigned.UInt32_ToUInt16(l)
252+ s = s & "i = MUnsigned.UInt32_ToUInt16(l)" & vbCrLf
253+ s = s & "i = " & i & vbCrLf
254+
255+ l = 123456789
256+ s = s & "l = " & l & vbCrLf
257+ c = MUnsigned.UInt32_ToUInt64(l)
258+ s = s & "c = MUnsigned.UInt32_ToUInt64(l)" & vbCrLf
259+ s = s & "c = " & c & vbCrLf
260+
261+
262+ i = 0
263+ l = 0
264+ c = 1.2345
265+ s = s & "c = " & c & vbCrLf
266+ i = MUnsigned.UInt64_ToUInt16(c)
267+ s = s & "i = MUnsigned.UInt64_ToUInt16(c)" & vbCrLf
268+ s = s & "i = " & i & vbCrLf
269+
270+ c = 123.4567
271+ s = s & "c = " & c & vbCrLf
272+ l = MUnsigned.UInt64_ToUInt32(c)
273+ s = s & "l = MUnsigned.UInt64_ToUInt32(c)" & vbCrLf
274+ s = s & "l = " & l & vbCrLf
275+
276+ Text1.Text = s
277+ End Sub
278+
222279Private Sub Form_Load ()
223- Me.Caption = "Unsigned operations on signed Int32+Int64 - v" & App.Major & "." & App.Minor & "." & App.Revision
280+ Me.Caption = "Unsigned operations on signed In16+ Int32+Int64 - v" & App.Major & "." & App.Minor & "." & App.Revision
224281End Sub
225282
226283Private Sub Form_Resize ()
227- Dim L As Single : L = 0
284+ Dim l As Single : l = 0
228285 Dim t As Single : t = Text1.Top
229286 Dim W As Single : W = Me.ScaleWidth
230287 Dim H As Single : H = Me.ScaleHeight - t
231- If W > 0 And H > 0 Then Text1.Move L , t, W, H
288+ If W > 0 And H > 0 Then Text1.Move l , t, W, H
232289End Sub
233290
234291Private Sub Command1_Click ()
@@ -246,125 +303,125 @@ Sub Debug_Print(ByVal s As String)
246303End Sub
247304
248305Sub TestDll ()
249- Dim V1 As Long
250- Dim V2 As Long
306+ Dim v1 As Long
307+ Dim v2 As Long
251308 Dim lret As Long
252309 Dim cret As Currency
253310 Dim s As String
254311
255- V1 = 123
256- V2 = 32
312+ v1 = 123
313+ v2 = 32
257314
258- lret = UInt32_Add_ref(V1, V2 )
315+ lret = UInt32_Add_ref(v1, v2 )
259316 Debug_Print lret '155
260317
261- lret = UInt32_Add(V1, V2 )
318+ lret = UInt32_Add(v1, v2 )
262319 Debug_Print lret '155
263320
264- lret = UInt32_Sub(V1, V2 )
321+ lret = UInt32_Sub(v1, v2 )
265322 Debug_Print lret '91
266323
267- lret = UInt32_Mul(V1, V2 )
324+ lret = UInt32_Mul(v1, v2 )
268325 Debug_Print lret '3936
269326
270- V1 = 2147483647
271- V2 = 100
272- cret = UInt32_Mul(V1, V2 )
327+ v1 = 2147483647
328+ v2 = 100
329+ cret = UInt32_Mul(v1, v2 )
273330 Debug_Print cret '21474836,4700
274331
275- V1 = 123456789
276- V2 = 33
277- lret = UInt32_Div(V1, V2 )
332+ v1 = 123456789
333+ v2 = 33
334+ lret = UInt32_Div(v1, v2 )
278335 Debug_Print lret '3741114
279336
280- V1 = &HCAFE &
281- lret = UInt32_Shl(V1 , 8 )
282- Debug_Print "Shl(" & Hex(V1 ) & ", 8) = " & Hex(lret)
337+ v1 = &HCAFE &
338+ lret = UInt32_Shl(v1 , 8 )
339+ Debug_Print "Shl(" & Hex(v1 ) & ", 8) = " & Hex(lret)
283340
284- V1 = UInt32_Shr(lret, 8 )
285- Debug_Print "Shr(" & Hex(lret) & ", 8) = " & Hex(V1 )
341+ v1 = UInt32_Shr(lret, 8 )
342+ Debug_Print "Shr(" & Hex(lret) & ", 8) = " & Hex(v1 )
286343
287- V1 = -V1
288- lret = UInt32_Sar(V1 , 8 )
289- Debug_Print "Sar(" & Hex(V1 ) & ", 8) = " & Hex(lret)
344+ v1 = -v1
345+ lret = UInt32_Sar(v1 , 8 )
346+ Debug_Print "Sar(" & Hex(v1 ) & ", 8) = " & Hex(lret)
290347
291- V1 = &HCAFEBABE
292- lret = UInt32_Rol(V1 , 8 )
293- Debug_Print "Rol(" & Hex(V1 ) & ", 8) = " & Hex(lret)
348+ v1 = &HCAFEBABE
349+ lret = UInt32_Rol(v1 , 8 )
350+ Debug_Print "Rol(" & Hex(v1 ) & ", 8) = " & Hex(lret)
294351
295- V1 = &HCAFEBABE
296- lret = UInt32_Ror(V1 , 8 )
297- Debug_Print "Ror(" & Hex(V1 ) & ", 8) = " & Hex(lret)
352+ v1 = &HCAFEBABE
353+ lret = UInt32_Ror(v1 , 8 )
354+ Debug_Print "Ror(" & Hex(v1 ) & ", 8) = " & Hex(lret)
298355
299- V1 = &HCAFE &
300- lret = UInt32_Rcl(V1 , 12 )
301- Debug_Print "Rcl(" & Hex(V1 ) & ", 12) = " & Hex(lret)
356+ v1 = &HCAFE &
357+ lret = UInt32_Rcl(v1 , 12 )
358+ Debug_Print "Rcl(" & Hex(v1 ) & ", 12) = " & Hex(lret)
302359
303- V1 = &HCAFE0000
304- lret = UInt32_Rcr(V1 , 12 )
305- Debug_Print "Rcr(" & Hex(V1 ) & ", 12) = " & Hex(lret)
360+ v1 = &HCAFE0000
361+ lret = UInt32_Rcr(v1 , 12 )
362+ Debug_Print "Rcr(" & Hex(v1 ) & ", 12) = " & Hex(lret)
306363
307- V1 = &HCAFEBABE
308- V2 = &HB000 &
309- lret = UInt32_And(V1, V2 )
310- Debug_Print "And(" & Hex(V1 ) & ", " & Hex(V2 ) & ") = " & Hex(lret)
364+ v1 = &HCAFEBABE
365+ v2 = &HB000 &
366+ lret = UInt32_And(v1, v2 )
367+ Debug_Print "And(" & Hex(v1 ) & ", " & Hex(v2 ) & ") = " & Hex(lret)
311368
312- V1 = &HCAFE0ABE
313- V2 = &HB000 &
314- lret = UInt32_Or(V1, V2 )
315- Debug_Print "Or(" & Hex(V1 ) & ", " & Hex(V2 ) & ") = " & Hex(lret)
369+ v1 = &HCAFE0ABE
370+ v2 = &HB000 &
371+ lret = UInt32_Or(v1, v2 )
372+ Debug_Print "Or(" & Hex(v1 ) & ", " & Hex(v2 ) & ") = " & Hex(lret)
316373
317- V1 = &H35014541
318- lret = UInt32_Not(V1 )
319- Debug_Print "Not(" & Hex(V1 ) & ") = " & Hex(lret)
374+ v1 = &H35014541
375+ lret = UInt32_Not(v1 )
376+ Debug_Print "Not(" & Hex(v1 ) & ") = " & Hex(lret)
320377
321- V1 = &HCAFE0ABE
322- V2 = &HCAFEB000
323- lret = UInt32_XOr(V1, V2 )
324- Debug_Print "XOr(" & Hex(V1 ) & ", " & Hex(V2 ) & ") = " & Hex(lret)
378+ v1 = &HCAFE0ABE
379+ v2 = &HCAFEB000
380+ lret = UInt32_XOr(v1, v2 )
381+ Debug_Print "XOr(" & Hex(v1 ) & ", " & Hex(v2 ) & ") = " & Hex(lret)
325382
326- V1 = &HCAFE0ABE
327- V2 = &HCAFEB000
328- lret = UInt32_XNOr(V1, V2 )
329- Debug_Print "XNOr(" & Hex(V1 ) & ", " & Hex(V2 ) & ") = " & Hex(lret)
383+ v1 = &HCAFE0ABE
384+ v2 = &HCAFEB000
385+ lret = UInt32_XNOr(v1, v2 )
386+ Debug_Print "XNOr(" & Hex(v1 ) & ", " & Hex(v2 ) & ") = " & Hex(lret)
330387
331- V1 = &HCAFE0ABE
332- V2 = &HCAFEB000
333- lret = UInt32_NOr(V1, V2 )
334- Debug_Print "NOr(" & Hex(V1 ) & ", " & Hex(V2 ) & ") = " & Hex(lret)
388+ v1 = &HCAFE0ABE
389+ v2 = &HCAFEB000
390+ lret = UInt32_NOr(v1, v2 )
391+ Debug_Print "NOr(" & Hex(v1 ) & ", " & Hex(v2 ) & ") = " & Hex(lret)
335392
336- V1 = &HCAFE0ABE
337- V2 = &HCAFEB000
338- lret = UInt32_NAnd(V1, V2 )
339- Debug_Print "NAnd(" & Hex(V1 ) & ", " & Hex(V2 ) & ") = " & Hex(lret)
393+ v1 = &HCAFE0ABE
394+ v2 = &HCAFEB000
395+ lret = UInt32_NAnd(v1, v2 )
396+ Debug_Print "NAnd(" & Hex(v1 ) & ", " & Hex(v2 ) & ") = " & Hex(lret)
340397
341398
342399
343400
344- V1 = -1
401+ v1 = -1
345402 's = Space(10)
346- s = UInt32_ToStr(V1 ) ', StrPtr(s)
403+ s = UInt32_ToStr(v1 ) ', StrPtr(s)
347404 Debug_Print s 'Trim0(s) '4294967295
348405
349- V1 = -1
406+ v1 = -1
350407 's = Space(8)
351- s = UInt32_ToHex(V1 ) ', StrPtr(s)
408+ s = UInt32_ToHex(v1 ) ', StrPtr(s)
352409 Debug_Print s 'Trim0(s) '4294967295
353410
354- V1 = -1
411+ v1 = -1
355412 's = Space(32)
356- s = UInt32_ToBin(V1 ) '1, StrPtr(s)
413+ s = UInt32_ToBin(v1 ) '1, StrPtr(s)
357414 Debug_Print s 'Trim0(s) '4294967295
358415
359- V1 = 32
360- V2 = 65
416+ v1 = 32
417+ v2 = 65
361418
362- lret = U4Add(U4Sub(100 , U4Mul(2 , U4Div(V1 , 4 ))), U4Div(V2 , U4Add(6 , 7 )))
419+ lret = U4Add(U4Sub(100 , U4Mul(2 , U4Div(v1 , 4 ))), U4Div(v2 , U4Add(6 , 7 )))
363420 's = Space(10): UInt32_ToStr lret, StrPtr(s)
364421 s = UInt32_ToStr(lret)
365422 Debug_Print s
366423
367- lret = (100 - (2 * V1 / 4 )) + (V2 / (6 + 7 ))
424+ lret = (100 - (2 * v1 / 4 )) + (v2 / (6 + 7 ))
368425 's = Space(10): UInt32_ToStr lret, StrPtr(s)
369426 s = UInt32_ToStr(lret)
370427 Debug_Print s
@@ -385,8 +442,8 @@ Sub TestDll()
385442 s = UInt64_ToStr(cret) ', StrPtr(s)
386443 Debug_Print s '7223372036854775805
387444
388- V1 = &HCAFEBABE
389- Dim d: d = UInt32_ToDec(V1 )
445+ v1 = &HCAFEBABE
446+ Dim d: d = UInt32_ToDec(v1 )
390447 Debug_Print VarType(d) & " " & CStr(d) '& " " & Hex(d) '14 3405691582
391448
392449 c1 = 12345.6789
@@ -457,41 +514,41 @@ Sub Test_ToStr()
457514
458515
459516 Dim r As Long 'radix
460- Dim L As Long
517+ Dim l As Long
461518
462519 v = 14021970
463520 r = 10
464- L = LogN(v, r) + 1
465- s = Space$(L )
521+ l = LogN(v, r) + 1
522+ s = Space$(l )
466523 ret = Int32_ToStrR(v, StrPtr(s), r)
467524 Debug_Print s
468525
469- If ret <> L * 2 Then
470- Debug_Print "error r<>l: r=" & r & "; l=" & L
526+ If ret <> l * 2 Then
527+ Debug_Print "error r<>l: r=" & r & "; l=" & l
471528 End If
472529
473530 v = &H1CAFEBAB
474531 r = 16
475- L = Ceiling(LogN(v, r))
476- s = Space$(L )
532+ l = Ceiling(LogN(v, r))
533+ s = Space$(l )
477534 ret = Int32_ToStrR(v, StrPtr(s), r)
478535
479536 Debug_Print s
480537
481- If ret <> L * 2 Then
482- Debug_Print "error r<>l: r=" & r & "; l=" & L
538+ If ret <> l * 2 Then
539+ Debug_Print "error r<>l: r=" & r & "; l=" & l
483540 End If
484541
485542 v = 987654321
486543 r = 10
487- L = Ceiling(LogN(v, r))
488- s = Space$(L )
544+ l = Ceiling(LogN(v, r))
545+ s = Space$(l )
489546 ret = Int32_ToStrR(v, StrPtr(s), r)
490547
491548 Debug_Print s
492549
493- If ret <> L * 2 Then
494- Debug_Print "error r<>l: r=" & r & "; l=" & L * 2
550+ If ret <> l * 2 Then
551+ Debug_Print "error r<>l: r=" & r & "; l=" & l * 2
495552 End If
496553
497554End Sub
0 commit comments