PrintArray Procedure ARQUITECTURA DE COMPUTADORES
Omar Lozano CuestaEnsayo13 de Junio de 2022
16.191 Palabras (65 Páginas)141 Visitas
ARITMETICA ENTERA
ARQUITECTURA DE COMPUTADORES
OMAR YESID LOZANO CUESTA CC.1077473687
MEDELLIN 2022
ANALISIS ARCHIVO BINARY_SEARCH.LST
Indica el tipo de proyecto que estamos trabajando, la version y la hora del mismo.
Microsoft (R) Macro Assembler Version 14.29.30140.0 06/11/22 20:04:14
6PrintArray Procedure (PrintArray.asm Page 1 – 1
Titulo del archivo del proyecto que se esta trabajando.
TITLE PrintArray Procedure (PrintArray.asm)
Include de la librería Irvine32, la cual es indispensable para este tipo de proyectos.
INCLUDE Irvine32.inc
C ; Include file for Irvine32.lib (Irvine32.inc)
C
C ;OPTION CASEMAP:NONE ; optional: make identifiers case-sensitive
C
C INCLUDE SmallWin.inc ; MS-Windows prototypes, structures, and constants
C .NOLIST
C .LIST
C
C INCLUDE VirtualKeys.inc
C ; VirtualKeys.inc
C .NOLIST
C .LIST
C
C
C .NOLIST
C .LIST
C
Logica del array del archive PrintArray.
00000000 .code
;-----------------------------------------------------------
00000000 PrintArray PROC USES eax ecx edx esi,
pArray:PTR DWORD, ; pointer to array
Count:DWORD ; number of elements
;
; Writes an array of 32-bit signed decimal integers to
; standard output, separated by commas
; Receives: pointer to array, array size
; Returns: nothing
;-----------------------------------------------------------
00000000 .data
00000000 2C 20 00 comma BYTE ", ",0
00000007 .code
00000007 8B 75 08 mov esi,pArray
0000000A 8B 4D 0C mov ecx,Count
0000000D FC cld ; direction = forward
0000000E AD L1: lodsd ; load [ESI] into EAX
0000000F E8 00000000 E call WriteInt ; send to output
00000014 BA 00000000 R mov edx,OFFSET comma
00000019 E8 00000000 E call Writestring ; display comma
0000001E E2 EE loop L1
00000020 E8 00000000 E call Crlf
ret
0000002D PrintArray ENDP
Estructura
Structures and Unions:
N a m e Size
Offset Type
CONSOLE_CURSOR_INFO . . . . . . 00000008
Porcentaje de la celda de caracteres rellenada por el cursor.
dwSize . . . . . . . . . . . . 00000000 DWord
Visibilidad del cursor.
bVisible . . . . . . . . . . . 00000004 DWord
CONSOLE_SCREEN_BUFFER_INFO . . . 00000016
Una estructura COORD que contiene el tamaño del bufer de pantalla de la consola, en columnas de caracteres y filas.
dwSize . . . . . . . . . . . . 00000000 DWord
Una estructura COORD que contiene las coordenadas de columna y fila del cursor en el búfer de pantalla de la consola.
dwCursorPosition . . . . . . . 00000004 DWord
Los atributos de los caracteres escritos en un búfer de pantalla por las funciones WriteFile y WriteConsole , o repetidos en un búfer de pantalla por las funciones ReadFile y ReadConsole .
wAttributes . . . . . . . . . 00000008 Word
Una estructura SMALL_RECT que contiene las coordenadas del búfer de la pantalla de la consola de las esquinas superior izquierda e inferior derecha de la ventana de visualización.
srWindow . . . . . . . . . . . 0000000A QWord
Una estructura COORD que contiene el tamaño máximo de la ventana de la consola, en columnas y filas de caracteres, dado el tamaño actual del búfer de pantalla y la fuente y el tamaño de la pantalla.
dwMaximumWindowSize . . . . . 00000012 DWord
Coordenadas
COORD . . . . . . . . . . . . . 00000004
X . . . . . . . . . . . . . . 00000000 Word
Y . . . . . . . . . . . . . . 00000002 Word
FILETIME . . . . . . . . . . . . 00000008
La parte de orden inferior del tiempo del archivo.
loDateTime . . . . . . . . . . 00000000 DWord
La parte de orden superior del tiempo del archivo.
hiDateTime . . . . . . . . . . 00000004 DWord
FOCUS_EVENT_RECORD . . . . . . . 00000004
Miembro reservado.
bSetFocus . . . . . . . . . . 00000000 DWord
FPU_ENVIRON . . . . . . . . . . 0000001C
controlWord . . . . . . . . . 00000000 Word
statusWord . . . . . . . . . . 00000004 Word
tagWord . . . . . . . . . . . 00000008 Word
instrPointerOffset . . . . . . 0000000C DWord
instrPointerSelector . . . . . 00000010 DWord
operandPointerOffset . . . . . 00000014 DWord
operandPointerSelector . . . . 00000018 Word
INPUT_RECORD . . . . . . . . . . 00000014
Un controlador para el tipo de evento de entrada y el registro de evento almacenado en el miembro Event .
...