Interno formato de CURRENCY tipo de datos de productos básicas

Seleccione idioma Seleccione idioma
Id. de artículo: 51414 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

Resumen

El tipo de datos CURRENCY es un entero con signo de 8 bytes multiplicado por 10.000. Esto permite una variable del tipo CURRENCY que tienen una gama de:
   (2 ^ 63 -1) / 10,000  =  +922337203685477.5807
				
para
   (2 ^ 63) / 10,000   =  -922337203685477.5808
				
de 19 dígitos permitidos, con no más de 4 dígitos a la derecha del separador decimal.

Más información

Porque el tipo CURRENCY está a escala por 10.000, su representación interna es el valor real multiplicado por 10.000. Por ejemplo, una variable CURRENCY que contiene el valor 0,0001 se almacenarán como sigue:
HIGH BYTE                                                     LOW BYTE
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000001
				
como con enteros normales, el byte superior se almacena en la dirección de memoria superior, por lo que una vez encontrar la dirección de la variable, podrá encontrar el byte bajo existe, el segundo byte almacenados anteriormente, el tercer byte por encima, etc.. A continuación muestra el programa de ejemplo muestran la representación hexadecimal del equipo para una variable de tipo de datos CURRENCY cuyo valor es INPUT desde el teclado.

Código de ejemplo:
'To try this example in VBDOS.EXE:
' 1. From the File menu, choose New Project.
' 2. Copy the code example to the Code window.
' 3. Press F5 to run the program.
'
'To try this example in VB.EXE:
' 1. From the File menu, choose New Project.
' 2. Copy the code example to Form_Click event procedure.
'    (Note: code will have to be slightly changed for VB)
' 3. Press F5 to run the program.
' 4. Click on the Form
'
'To try this example in QB.EXE or QBX.EXE
' 1. From the File menu, choose New Program.
' 2. Copy the code example to the Code window.
' 3. Press F5 to run the program.
'
'******************************************************************
'     Sample program to display machine representation of the     *
'     CURRENCY data type (8-byte scaled INTEGER)                  *
'******************************************************************
CLS
DO UNTIL INKEY$ = CHR$(27)
  PRINT "Enter a CURRENCY value.  The machine representation will be "
  PRINT "displayed in Hex"
  INPUT a@                   ' "@" is the CURRENCY data type suffix.
  address% = VARPTR(a@)      ' Get the address of the variable a@.

  FOR i% = 7 TO 0 STEP -1
     PRINT HEX$(PEEK(address% + i%)); "  ";  ' Display representation
  NEXT i%                                    ' in normal Low-Byte to
                                             ' the right form.
  PRINT
  PRINT "press a key to continue, Esc to EXIT"
  SLEEP
LOOP
				

Propiedades

Id. de artículo: 51414 - Última revisión: sábado, 1 de febrero de 2014 - Versión: 2.1
La información de este artículo se refiere a:
  • Microsoft Visual Basic for MS-DOS
  • Microsoft Visual Basic 1.0 Standard Edition
  • Microsoft QuickBasic 4.0
  • Microsoft QuickBASIC 4.0b
  • Microsoft QuickBasic 4.5 para MS-DOS
  • Microsoft BASIC Professional Development System 7.0
  • Microsoft BASIC Professional Development System 7.1
Palabras clave: 
kbnosurvey kbarchive kbmt KB51414 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 51414

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com