龙龙 发表于 2015-6-22 03:22:29

第10章汇编测试题目

  
  1、补全程序,实现从内存1000:0处开始执行指令。
  assume cs:code
  stack segment
  db 16 dup(0)
  stack ends
  code segment
  start:mov ax,stack
  mov ss,ax
  mov sp,16
  mov ax,____
  push ax
  mov ax,____
  push ax
  retfcode ends
  end start
  A、 cs,ip       B、 0,1000h      C、 1000h,0       D、 0,1000
  2、下列哪条指令不能够使CS:IP指向当前内存段范围内以s为标号的代码段______。
  A、 jmp near ptr s
  B、 jmp far ptr s
  C、 call near ptr s
  D、 call word ptr s
  3、下面的程序执行完add ax,5时,ax中的数值为多少____
  assume cs:code
  stack segment
  dw 8 dup(0)
  stack ends
  code segment
  start: mov ax,stack
  mov ss,ax
  mov sp,16
  mov ds,ax
  mov ax,0
  call word ptr ds:
  add ax,2
  inc ax
  add ax,5
  mov ax,4c00H
  int 21H
  code ends
  end start
  A、 3         B、 8         C、 0         D、 4c00H
  4、对下列程序说法正确的是_____。
  assume cs:codesg
  stack segment
  dw 10 dup (0)
  stack ends
  codesg segment
  mov ax,4c00h
  int 21h
  start:mov ax,stack
  mov ss,ax
  mov sp,20
  mov ax,0
  push cs
  push ax
  mov bx,0
  retf
  codesg ends
  end start
  A、 程序中start之后的汇编指令不能得到执行。
  B、 程序加载后stack段在内存中实际占用的内存空间是20b。
  C、 程序的每一条指令都能获得执行,但不能正常返回。
  D、 指令retf可替换为ret,并能够正常返回。
  5、下面的程序执行后,ax中的数值是多少____
  内存地址机器码汇编指令
  1000:0b8 00 00mov ax,6
  1000:2ff d0call ax
  1000:540    inc ax
  1000:6   mov bp,sp
  add ax,
  A、 11         B、 8         C、 9         D、 126、下面的程序执行后,ax中的数值为多少____内存地址  机器码   汇编指令
  1000:0 b800 00 mov ax,0
  1000:3   e801 00 call s
  1000:6  40   inc ax
  1000:7 58   s: pop ax
  A、 3   B、 1    C、 4    D、 67、某程序中定义了如下数据:
  data segment
  db Hello
  db 'world'
  db !
  db 'W','elcome'
  db to,masm!
  db Bye,'b','ye!'
  dw 0,1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh
  dd 16 dup (0)
  data ends
  下列说法正确的是______。
  A、 该程序加载后其中的字符数据和数字数据在内存中都是以ASCII码的形式存放的。
  B、 该程序加载后这组数据在内存中所占用实际空间是90HB。
  C、 该数据段定义可放在该程序中end伪指令之前的任何位置。
  D、 在编译阶段,该程序因如此定义数据而报错。
  第10章答案   
  1234567
  CDBDADC
SF我的

nikkitang 发表于 2015-6-27 01:09:12

每天都来学习,一定会进步的,加油!
页: [1]
查看完整版本: 第10章汇编测试题目