PrintArray Procedure ARQUITECTURA DE COMPUTADORES
Enviado por Omar Lozano Cuesta • 13 de Junio de 2022 • Ensayo • 16.191 Palabras (65 Páginas) • 124 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
...