汇编网首页登录博客注册
qinaode12的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
文章收藏
友情链接

[2008-12-13 13:32] 实验九

因为一直都想,在cmd下运行程序后,能看到一点东西。
在最初在debug下修改显存时,就想怎么才能编程实现这个功能。无意中看到了实验九,觉得自己用目前所学的知识能够解决这个问题。所以就试了一哈。这是我最终实现的程序。觉得自己在遇到困难后去思考后,进步了些!!呵呵!!!
assume cs:code,ds:data,ss:stack
data segment
  db 'welcome to masm!'
  db 02h,24h,71h
data ends
stack segment
  dw 0,0,0,0,0,0,0,0
stack ends
code segment ...
阅读全文 | 评论次数(3) | 浏览次数(506) | 所属类型(默认类型)

[2008-12-10 09:54] 第七章测试题

(1)生成EXE之后用Debug加载后,查看寄存器内容如下: 
          ds=0b2d es=0b2d ss=0b3d cs=0b3e ip=0000 
          程序的起始地址的段地址是__3___。 
  
1、    0b3e         
2、    0b2d         
3、    0b3d         
4、    0 

分析:问题问程序的起始地址的段地址。开始以为就是cs中的值,因为程序是从cs:ip处开始执行的嘛。结果第一次没有通过,后来才明白程序的起始地址应该是psp后紧接的那个地址,载入内存时cs:ip的指向只是说明程...
阅读全文 | 评论次数(2) | 浏览次数(567) | 所属类型(汇编作业)

[2008-12-03 20:07] 第六章测试题

第6章汇编测试题目 

共5道单选题目 

(1)在Intel8086环境下,下列说法合理的是__3___。 
 1、  汇编语言程序载入内存后处于64K空间以外的数据和指令将无法使用和执行。 
 2、  一个数据段命名为data,此标号代表这个数据段在内存中的起始地址。 
 3、  如果载入的程序没有返回语句,那么当程序代码执行完毕,将继续读取后续内存空间 
      存储的指令到CPU内部作为指令执行下去,直到遇到返回指令为止。 
 4、  用DW和DD定义进行的数据,只能够以字为单位访问。 

(2)在某程序中,定义了262B的数据段data,那么程序载入内存,该...
阅读全文 | 评论次数(2) | 浏览次数(561) | 所属类型(汇编作业)

[2008-11-28 11:10] 网上收集的汇编语言常见错误

汇编程序在对源程序的汇编过程中,若检查出某语句有语

法错误,随时在屏幕上给出出错信息.如操作人员指定的

列表文件名(即.LST),汇编程序亦将在列表文件中出错的

下面给出出错信息,以便操作人员即时查找错误,给予更

正.MASM5.0出错信息格式如下:


源程序文件行:WARNING/ERROR错误信息码:错误描述信息


其中,错误描述信息码由五个字符组成,第一个是字母A

,表示汇编语言程序出错;接着有一个数字指明出错类

别:'2'为严重错误,'4'为严肃警告,'5'为建议性警告,

最后三位为错误编号.


错误编号
错误描述
...
阅读全文 | 评论次数(1) | 浏览次数(674) | 所属类型(默认类型)

[2008-11-26 11:35] 第5章汇编测试题目

第5章汇编测试题目  

共5道单选题目  

(1)在Intel8086环境下,对指令mov ax,[bx]描述错误的是__4___。  
 1、  指令中,源操作数的段地址默认为ds中的内容  
 2、  指令中,源操作数的偏移地址为bx中的内容  
 3、  指令执行后,(al)=((ds)*16+(bx)),(ah)=((ds)*16+(bx)+1)  
 4、  指令执行后,((ds)*16+(bx))=(al),((ds)*16+(bx)+1)=(ah)  
分析:是将内存单元[bx]的值赋予寄存器ax,显然4错
(2)   mov cx,5  
   s: ...
阅读全文 | 评论次数(1) | 浏览次数(503) | 所属类型(汇编作业)

[2008-11-25 14:50] 实验三

点击查看原图
(1)将下面的程序保存为t1.asm文件,将其生成可执行文件t1.exe:
assume cs:codesg
codesg segment
  mov ax,2000H
  mov ss,ax
  mov sp,0
  add sp,4
  pop ax
  pop bx
  push ax
  push bx
  pop ax
  pop bx
  mov ax,4c00H
  int 21H
codesg ends
end
(2)用Debug跟踪t1.exe的执行过程,写出每一步执行后,相关寄存器中的内容和栈顶的内容。
(3)PSP的头两个字节是CD20...
阅读全文 | 评论次数(3) | 浏览次数(481) | 所属类型(汇编作业)

[2008-11-25 14:29] 第四章测试题

第4章汇编测试题目 

共2道单选题目 

(1)关于伪指令相关描述错误的是__2___。 
 1、  伪指令没有对应的机器码,只用来指导汇编过程的。 
 2、  伪指令由编译器处理,在程序中可有可无。 
 3、  编译器要通过执行伪指令才能对源程序进行相应的处理操作,完成编译工作。 
 4、  伪指令是汇编语言源程序不可缺少的组成部分。
分析:伪指令是由编译器处理的,没有对应机器码,但它是汇编语言中
     必不可少的部分,定义段要用到xxx segment…… xxx ends,
    程序结束要用到end等等。 
(2)下列程序中,出现逻辑错误的是:__2__...
阅读全文 | 评论次数(4) | 浏览次数(593) | 所属类型(汇编作业)

[2008-09-15 15:35] 第三章测试题

(1)下列指令的书写正确的是:__3__ 
 1、 push al 
 2、 mov cs:[0],ds:[10] 
 3、 pop si 
 4、 mov ds:[0],2 
分析:出栈和入栈操作都是以字为单位故1错,学到此mov指令没提供
     mov 内存单元,内存单元,mov 内存单元,数据的形式,2,4错
(2)能够将ax中的内容送到内存0000:0200H处的指令序列是__4__。 
 1、 mov ds,0 
    mov bx,200h 
    mov [bx],ax 
 2、 mov ax,200h 
    mov ds,ax 
    m...
阅读全文 | 评论次数(1) | 浏览次数(476) | 所属类型(汇编作业)

[2008-09-12 10:49] 第二章实验

关于实验4的收获:
   做了第(4)实验后,发现显示状态由两方面决定:1.显示内容,2.显示格式。
开始不明白为什么例子中给出的是 -e b810:0 01 01 02 02 03 03 04 04(明明改变了8个显存单元) 
而显示出来的却只有4个花花绿绿的符号,后来才发现发现对于01 01 来说,前一个01是指定显示的内容,后一个01是指定显示格式
01表示黑底蓝字,也就是说01的第一位设置背景色第二位设置字体颜色,0(黑)1(蓝)2(绿)……7(白),默认的黑底白字两位16进制数
就是07,将-e b810:0 01 01 02 02 03 03 04 04改为-eb810:...
阅读全文 | 评论次数(1) | 浏览次数(481) | 所属类型(汇编作业)

[2008-09-10 14:55] 第二章测试题

第2章汇编测试题目 

(1)16位结构的CPU 不一定具备的特性是:__4__ 
 1、 运算器一次最多可以处理16位的数据 
 2、 寄存器的最大宽度为16位 
 3、 寄存器和运算器之间的通路为16位 
 4、 地址总线为16根 
 
 
(2) 1000:0 mov ax,8 
    1000:3 jmp ax 
    1000:5 mov ax,0 
    1000:8 mov bx,ax 
    1000:a jmp bx 
CPU从1000:0处开始执行指令当执行完1000:a处的指令后CPU几次修改IP___3__。 
 1、 4 
 2...
阅读全文 | 评论次数(0) | 浏览次数(420) | 所属类型(汇编作业)