Red de conocimiento informático - Conocimiento de la instalación - Compile las preguntas del examen final

Compile las preguntas del examen final

Preguntas de repaso y respuestas de referencia del examen final del segundo semestre del año académico 2005-2006

1. Completa los espacios en blanco

1. convertido a un número binario como ()2, convertido a un número hexadecimal es ()16.

2. Las instrucciones en la computadora se componen de dos partes: () y (código de dirección).

3. El 8086 tiene 20 buses de direcciones y el rango de direccionamiento es ( ) bytes.

4. La dirección de la siguiente instrucción a ejecutar se almacena en el registro ( ).

5. Escribir las instrucciones devueltas por las tres subrutinas del PC IBM (RET), (IRET) y (IRETD).

6. El programa fuente en lenguaje ensamblador debe ser ensamblado por el programa ( ) y conectado por el programa ( ) para generar un archivo ejecutable.

7. La dirección de una determinada unidad de memoria se expresa como 2314H: 4132H, luego su dirección de desplazamiento = (4132), dirección física = ()

8. es lo mismo que () las instrucciones se usan juntas.

9. Para ver y modificar el contenido de la unidad de memoria en la pantalla, puede utilizar los comandos DEBUG ( ) y ( ).

10. (AL)=BFH, si desea proteger los bits 0 y 1, debe ejecutar la instrucción ( ); la instrucción ( )

11. El conjunto de macros es adecuado para su uso en segmentos de subfunciones de () y ();

2 Preguntas de opción múltiple.

1. Suponga que la longitud de la palabra es N=16, número con signo. El código de complemento de 7AE9H se expresa como ( )

A. 9EA7H B. 76C4H C. 8417H D. 7AE9H

2 Comparando los números con signo 3260H y 0B425H, la relación de tamaño es ( )

A. que D. No se puede comparar

3. La dirección de destino transferida en la instrucción JMP WORD PTR [BX][DI] es ( )

A. 16 d x (DS) + (BX) + (DI) B. 16d x (ES) + (BX) + (DI)

C. 16d x (SS) + (BX) + (DI)D. 16d x (CS) + (BX) + (DI)

4. En la instrucción MOV AX, [1000H], el modo de direccionamiento del operando fuente es ( )

A. . Dirígete inmediatamente a B. Direccionamiento directo C. Direccionamiento indirecto intrasegmento D. Direccionamiento de registro

5. Lo que se almacena en la tabla de vectores de interrupción es ( )

A. Número de tipo de interrupción B. Dirección del punto de interrupción C. Rutina de servicio de interrupción D. Dirección de entrada de la rutina de servicio de interrupción

6. La instrucción de transferencia condicional en el sistema de instrucción en lenguaje ensamblador 8086 puede transferir el programa a ( )

A en cualquier lugar dentro del segmento B. La dirección de desplazamiento de la instrucción es: 32768~+32767

C. La dirección de desplazamiento de la instrucción es -128~+127. D. Fuera del segmento

7. son ( )

A DB,DW,DD,DQ,DT B. DB,DW,DD C. DB, DW D. DB;

8. = 87H, ejecute ADD AL, después de 0F5H, el estado de S, Z, C, O, P es ( )

A. SF=0, ZF=0, CF=1, OF=1, PF=0 B. SF=1, ZF=0, CF=1, OF=0, PF=1

C. SF=0, ZF=0, CF=0, OF=1, PF=0 D. SF=1, ZF=0, CF=1, OF=1, PF=1

9 Instrucción de comparación CMP( )

A. Dedicado a la comparación de números con signo B. Dedicado. a comparación de números sin signo

C. Dedicado a la comparación de cadenas D. No distingue si el objeto de comparación es un número con signo o un número sin signo

10 La instrucción de transferencia de datos tiene una clara. efecto en el bit de bandera El impacto es ( )

A. Nada de esto afecta; B. Todos los afectados;

C. Excepto SAHF y POPF, nada más se verá afectado D. Excepto los bits de bandera de control, nada más afectará

3 Preguntas de verdadero o falso

( )31 La subrutina llamada entre segmentos debe ser descrita como un procedimiento remoto por el pseudo. operación LEJOS.

( )32. La PC utiliza bits como unidad mínima de direccionamiento.

( )33. Cuando SRC es un valor inmediato, DST puede utilizar el direccionamiento de memoria.

( )34. Puede utilizar la directiva ORG para especificar la dirección de desplazamiento de cada segmento lógico.

( )35. LOOPE/LOOPZ se transfiere a la etiqueta cuando es igual/cero y su condición de salida es (CX)=0 o ZF=0.

( )36. POP IP

( )37. Supongamos que 327FH y 0BFFFH son la representación en complemento a dos de números con signo, entonces 327FH < 0BFFFH

( ) 38. Las referencias cruzadas de símbolos entre múltiples módulos deben explicarse utilizando las pseudoinstrucciones PUBLIC y EXTRN

( )39. AGREGAR [ SI], 50

4. Preguntas de análisis del programa

1 A DW 1234H

B DW 5678H

PUSH A<. /p >

PUSH B

POP A

POP B

Respuesta: Después de ejecutar el segmento del programa anterior, (A) = , (B ) =

2. Analice el siguiente segmento del programa,

MOV AL, 200

SAR AL, 1

MOV BL, AL.

MOV CL, 2

SAR AL, CL

ADD AL, BL

Después de ejecutar el segmento del programa (BL) = (AL) =

p>

3. STRING DB 'ABCDEFGHIJ'

MOV AH,01; Ingrese caracteres del 1 al 9 desde el teclado

INT 21H

AND AL, 0FH

DEC AL

XOR AH, AH

MOV BX, CADENA DE DESPLAZAMIENTO

AÑADIR BX, AX

MOV BL, [BX]

MOV AH, 02H; salida de pantalla

INT 21H

Intenta responder:

(1) ¿Cuál es la función del segmento de programa anterior?

(2) Si se ingresa el carácter '4' desde el teclado, ¿cuál será el resultado del segmento del programa?

4. Existen los siguientes procedimientos:

AND AL, AL

JZ BRCH1

RCR AL, 1

JZ BRCH2

RCL AL, 1

INC AL

JZ BRCH3

Después de ejecutar el programa anterior, intente responder :

(1) Cuando (AL)=, el programa cambia a BRCH1

(2) Cuando (AL)=, el programa cambia a BRCH2

(3) Cuando (AL) )=, el programa cambia a BRCH3

5. ¿Qué logra el siguiente segmento del programa

DAT1 DB 30 DUP(?)

DAT2 DB 10 DUP(? )

MOV CX, 10

MOV BX, 20

MOV SI, 0

MOV DI, 0

SIGUIENTE: MOV AL, DAT1 [BX] [SI]

MOV DAT2 [DI], AL

INC SI

INC DI

LOOP NEXT

6. Después de ejecutar el siguiente segmento del programa, ¿cuál es el contenido de AL?

MOV BX, 00FFH

Y BX

, 0FFFH

OR BX, 0F0FH

XOR BX, 00FFH

7. Después de ejecutar las siguientes instrucciones, ¿cuál es el contenido del registro AX? p>

INICIO DW 10H, 20H, 30H, 40H, 50H

EE1 DW 3

MOV BX, INICIO COMPENSADO

ADD BX, EE1

MOV AX, [BX]

8. ¿Intenta analizar la función del siguiente segmento del programa

CMP AL,? 'A'

JC OTRO

CMP AL, 'Z'+1

JNC OTRO

JMP LETRA

OTROS: ┇

CARTA: ┇

5. Programa de preguntas para completar los espacios en blanco

1. Supongamos que AX y BX tienen uno como número positivo y uno como número negativo. Se completa el siguiente segmento del programa y el número positivo se envía a la unidad PLW para su almacenamiento. Complete las instrucciones que faltan en el programa.

PRUEBA AX, 8000H

MOV PLW, BX

JMP HECHO

K1:

HECHO:

2. Están disponibles los siguientes segmentos de datos:

SEGMENTO DE DATOS

STR1 DB'ABCDEFGHIJKL'

COUNT EQU-STR1

BUF DB COUNT DUP (0)

FIN DE DATOS

El siguiente segmento del programa es transferir inversamente todos los caracteres en STR1 al búfer BUF (es decir, el primer carácter en STR1 Enviado a la última unidad de BUF, el último carácter en STR1 se envía a la primera unidad de BUF). Intente completar las instrucciones en blanco en el programa.

MOV SI, OFFSET BUF-1

MOV DI, OFFSET BUF

MOV CX, COUNT

__ __

LOOP:MOVSB

__ __

LOOP LOP

o ()

6. Preguntas de programación

1. La sección de programación calcula SUM=∑ai=a1+a2+...+a20. Se sabe que a1...a20 se almacena en el área de datos con BUF como la primera dirección i=1. Ocupa dos bytes y la suma SUM también es de dos bytes. (Es necesario escribirlo en una estructura de bucle y el control de bucle utiliza control de conteo). (No es necesario escribir el formato del programa fuente para esta pregunta. Solo necesita escribir la secuencia de instrucciones relevante requerida por la pregunta de la prueba).

2. los datos se almacenan en la unidad DAT y los datos SQRTAB El área almacena valores cuadrados del 0 al 9. Utilice el método de búsqueda directa de tabla para escribir una subrutina para encontrar el valor cuadrado correspondiente a los datos en la unidad DAT. en SQRTAB y enviarlo a la unidad SQR. Y escriba el método de llamada del programa principal.

Los segmentos de datos son los siguientes:

SEGMENTO DE DATOS

DAT DB XXH

SQRTAB DB 0, 1, 4, 9, ... 81

DB SQR?

LOS DATOS TERMINAN

3. Intente escribir un segmento de programa que desplace hacia la derecha las palabras dobles en DX y AX en cuatro bits.

4. Defina un área de datos, que contenga datos de cuatro caracteres de 23H, 24H, 25H y 26H. Copie esta área de datos 20 veces y muestre los resultados de la copia.

Preguntas de repaso y respuestas de referencia del examen final del segundo semestre del año académico 2005-2006

1. Completa los espacios en blanco

1. convertido a un número binario como (101110001) 2, convertido a un número hexadecimal es (171) 16.

2. Las instrucciones en la computadora se componen de dos partes (código de operación) y (código de dirección).

3. El 8086 tiene 20 buses de direcciones y el rango de direccionamiento es (1 M) bytes.

4. La dirección de la siguiente instrucción a ejecutar se almacena en el registro (registro puntero de instrucción).

5. Escribir las instrucciones devueltas por las tres subrutinas del PC IBM (RET), (IRET) y (IRETD).

6. El programa fuente en lenguaje ensamblador debe ensamblarse mediante un programa (ensamblador) y conectarse mediante un programa (de conexión) para generar un archivo ejecutable.

7. La dirección de una determinada unidad de memoria se expresa como 2314H: 4132H, luego su dirección de desplazamiento = (4132), dirección física = (27272H)

8. El prefijo es el mismo que () las instrucciones se usan juntas.

9. Para ver y modificar el contenido de la unidad de memoria en la pantalla, utilice los comandos DEBUG (D) y (E).

10. (AL)=BFH, si desea enmascarar los bits 0 y 1, debe ejecutar la instrucción (AND AL,3F si desea invertir los bits 0 y 1); , puede utilizar la instrucción (XOR AL,3F)

11. El conjunto de macros es adecuado para su uso en secciones de subfunciones (programas cortos) y (muchos parámetros);

2 Preguntas de opción múltiple

1. Suponga que la longitud de la palabra N=16, la representación en complemento del número con signo 7AE9H es (D)

A. 9EA7H B. 76C4H C. 8417H D. 7AE9H

2 Comparando los números con signo 3260H y 0B425H, la relación de tamaño es (C)

A. Mayor que D No se puede comparar

3. La dirección de destino transferida en la instrucción JMP WORD PTR [BX][DI] es (A)

A. 16 d x (DS) + (BX) + (DI) B. 16d x (ES) + (BX) + (DI)

C. 16d x (SS) + (BX) + (DI)D. 16d x (CS) + (BX) + (DI)

4. En la instrucción MOV AX, [1000H], el modo de direccionamiento del operando fuente es (B)

A. Dirígete inmediatamente a B. Direccionamiento directo C. Direccionamiento indirecto intrasegmento D. Direccionamiento de registro

5. Lo que se almacena en la tabla de vectores de interrupción es (D)

A. Número de tipo de interrupción B. Dirección del punto de interrupción C. Rutina de servicio de interrupción D. Entrada de rutina de servicio de interrupción Dirección

6. La instrucción de transferencia condicional en el sistema de instrucción en lenguaje ensamblador 8086 puede transferir el programa a (A)

A en cualquier lugar dentro del segmento B. Desplazamiento de la instrucción La dirección es -32768~+32767

C. La dirección de desplazamiento de la instrucción es -128~+127. Fuera del segmento

7. las declaraciones de cadenas son (D)

A DB,DW,DD,DQ,DT B. DB,DW,DD C. DB, DW D. DB;

8. Si (AL) = 87H, ejecute ADD AL, después de 0F5H, el estado de S, Z, C, O, P es ( C )

A. SF=0, ZF=0, CF=1, OF=1, PF=0 B. SF=1, ZF=0, CF=1, OF=0, PF=1

C. SF=0, ZF=0, CF=0, OF=1, PF=0 D. SF=1, ZF=0, CF=1, OF=1, PF=1

9 Instrucción de comparación CMP( D )

A. Dedicado a la comparación de números con signo B. Dedicado a la comparación de números sin signo

C. Dedicado a la comparación de cadenas D. No distingue si el objeto de comparación es un número con signo o un número sin signo

10 Instrucciones de transferencia de datos para bits de bandera. La influencia es (D)

A. Ninguno de ellos afecta; B. Todos los afectados;

C. Excepto SAHF y POPF, los demás no se ven afectados D. Excepto los bits de bandera de control, nada más afectará

3 Preguntas de verdadero o falso

( )31 La subrutina llamada entre segmentos debe ser descrita como un procedimiento remoto por el pseudo. operación LEJOS. T

( )32. La PC utiliza bits como unidad mínima de direccionamiento. F

( )33. Cuando SRC es un valor inmediato, DST puede utilizar el direccionamiento de memoria. F

( )34. Puede utilizar la directiva ORG para especificar la dirección de desplazamiento de cada segmento lógico.

T

( )35. LOOPE/LOOPZ se transfiere a la etiqueta cuando es igual/cero y su condición de salida es (CX)=0 o ZF=0. T

( )36. POP IP F

( )37 Supongamos que 327FH y 0BFFFH son la representación en complemento a dos de números con signo, entonces 327FH < 0BFFFH F

( )38. Las referencias cruzadas de símbolos entre múltiples módulos deben explicarse utilizando las pseudoinstrucciones PUBLIC y EXTRN T

( )39. >( )40. ADD [SI], 50 F

IV. Preguntas de análisis del programa

1.

PUSH A

PUSH B

POP A

POP B

Respuesta: Después de ejecutar el segmento del programa anterior (A ) = 5678H , (B) = 1234H

2 Analice el siguiente segmento del programa,

MOV AL, 200

SAR AL, 1

.

MOV BL, AL

MOV CL, 2

SAR AL, CL

AÑADIR AL, BL

Después del programa se ejecuta el segmento (BL ) = 0E4H (AL) = 0DDH

3. STRING DB 'ABCDEFGHIJ'

MOV AH,01 ; Ingrese los caracteres 1~9 desde el teclado

INT 21H

AND AL, 0FH

DEC AL

XOR AH, AH

MOV BX, CADENA COMPENSADA

AÑADIR BX, AX

MOV BL, [BX]

MOV AH, 02H salida de visualización

INT 21H

Intente responder:

(1) ¿Cuál es la función del segmento de programa anterior? Determine qué carácter de STRING se muestra en la pantalla en función de los caracteres del '1' al '9' ingresados ​​desde el teclado.

(2) Si se ingresa el carácter '4' desde el teclado, ¿cuál será el resultado del segmento del programa? El monitor muestra el carácter 'D'

4. Existe el siguiente programa:

AND AL, AL

JZ BRCH1

. RCR AL, 1

JZ BRCH2

RCL AL, 1

INC AL

JZ BRCH3

Después ejecutando el programa anterior, intente responder:

(1) Cuando (AL)=(AL)=0, el programa cambia a BRCH1

(2) Cuando (AL)=( AL)=1, el programa cambia a BRCH2

(3) Cuando (AL)=(AL)=-1, el programa cambia a BRCH3

5. segmento de programa realizado? Almacenar DAT1+20 Los 10 bytes que comienzan desde la unidad se mueven a las 10 unidades de almacenamiento consecutivas que comienzan desde DAT2

DAT1 DB 30 DUP(?)

DAT2 DB 10 DUP(?)

MOV CX, 10

MOV BX, 20

MOV SI, 0

MOV DI, 0

p>

SIGUIENTE: MOV AL, DAT1 [BX] [SI]

MOV DAT2 [DI], AL

INC SI

INC DI

LOOP NEXT

6. Después de ejecutar el siguiente segmento del programa, ¿cuál es el contenido de AL? MOV BX, 00FFH

AND BX, 0FFFH

OR BX, 0F0FH

XOR BX, 00FFH

7. instrucciones, ¿cuál es el contenido del registro AX 3000H

START DW 10H, 20H, 30H, 40H, 50H

EE1 DW 3

MOV BX, OFFSET START

ADD BX, EE1

MOV AX, [BX]

8. siguiente segmento del programa Determine el contenido de AL, si es 'A' ~ Cuando 'Z' es una letra mayúscula, el programa cambia al procesamiento de LETRAS; de lo contrario, cambia al procesamiento de OTRA

CMP AL, ' A'

JC OTRO

CMP AL, ' Z'+1

JNC OTRO

JMP LETRA

OTROS: ┇

CARTA: ┇

5. Programe preguntas para completar en blanco

1. que uno de los números en AX y BX es un número positivo y el otro es un número negativo. Después de completar el siguiente segmento del programa, el número positivo se envía a la unidad PLW. Para almacenarlo, complete las instrucciones que faltan en. el programa.

PRUEBA AX, 8000H

JE K1 o JZ K1

MOV PLW, BX

JMP HECHO

K1: MOV PLW, AX

HECHO:

2 Los siguientes segmentos de datos están disponibles:

SEGMENTO DE DATOS

STR1 DB'. ABCDEFGHIJKL '

COUNT EQU - STR1

BUF DB COUNT DUP (0)

DATA FINDS

El siguiente segmento del programa es para implementar Todos los caracteres se transfieren al búfer BUF en dirección inversa (es decir, el primer carácter de STR1 se envía a la última unidad de BUF y el último carácter de STR1 se envía a la primera unidad de BUF). Intente completar las instrucciones en blanco en el programa.

MOV SI, OFFSET BUF-1

MOV DI, OFFSET BUF

MOV CX, COUNT

__ CLD__

BUCLE:MOVSB

__ SUB SI, 2__

BUCLE LOP

O (STD/ADD DI, 2)

6. Preguntas de programación

1. La sección de programación calcula SUM=∑ai=a1+a2+...+a20. Se sabe que a1...a20 se almacena en la secuencia i con BUF como el primero. dirección = 1 área de datos, cada dato ocupa dos bytes y la suma SUMA también es de dos bytes. (Es necesario escribirlo en una estructura de bucle y el control de bucle utiliza control de conteo). (No es necesario escribir el formato del programa fuente para esta pregunta. Solo necesita escribir la secuencia de instrucciones relevante requerida por la pregunta de la prueba).

Segmento de programa: MOV AX, 0

MOV BX, OFFSET BUF

MOV CX, 20

LOP: AÑADIR AX, [BX]

INC BX

INC BX

LOOP LOP

MOV SUM, AX

2 Suponga que se almacena un byte de datos de -9~+9 en la unidad DAT y el valor cuadrado de 0 ~ 9 se almacena en el área de datos SQRTAB. Utilice el método de búsqueda directa de tabla para escribir una subrutina para encontrar el valor cuadrado correspondiente a los datos en la unidad DAT en SQRTAB y enviarlo a la unidad SQR. Y escriba el método de llamada del programa principal.

Los segmentos de datos son los siguientes:

SEGMENTO DE DATOS

DAT DB XXH

SQRTAB DB 0, 1, 4, 9, ... 81

DB SQR?

LOS DATOS TERMINAN

STACL1 SEGMENTO PARA STACK

DW 20H DUP (?)

STACK1 TERMINA

CÓDIGO SEGMENTO

ASUMAR CS: CÓDIGO, DS: DATOS, SS: STACK1

INICIO: MOV AX, DATOS

MOV DS, AX

LLAMADA SUBROT

MOV AH, 4CH

INT 21H

PROC SUBROT

PUSH AX

PUSH BX

LEA BX, SQRTAB

MOV AL, DAT

PRUEBA AL, 80H

JNS SIGUIENTE

NEG AL

SIGUIENTE: XLAT SQRTAB

MOV SQR, AL

POP BX p>

POP AX

RET

SUBROT ENDP

CÓDIGO FINALIZA

END SRART

3 Intente escribir un segmento de programa que desplace hacia la derecha las palabras dobles en DX y AX en cuatro bits.

MOV CL, 04

SHR AX, CL

MOV BL, DL

SHR DX, CL

SHL BL, CL

O BL, AH

4. Defina un área de datos que contenga datos de cuatro caracteres de 23H, 24H, 25H y 26H. Copie esta área de datos 20 veces. y se muestran los resultados de la copia.

SEGMENTO DE DATOS

PATRÓN DB 23H, 24H, 25H, 26H

PANTALLA DB 80 DUP(' '), '$'

FECHA FINALIZACIÓN

SEGMENTO DE CÓDIGO

CLD

LEA SI, PATRÓN

LEA DI, PANTALLA

MOV CX, 80

REP MOVSB

MOV AH, 09H

LEA DX, PANTALLA

INT 21H

RET

EL CÓDIGO TERMINA