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

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
  •  十年磨一剑
  • 『姓名』:ZH                  
  • 『性别』:保密  『发送消息
  • 个人说明:交朋识友,共同进步
    http://blog.163.com/zohs
  • 详细信息『加为好友』
学习动态
最新留言
好友圈
文章收藏
友情链接

[2008-07-22 21:12] 实验9 根据材料编程

点击查看原图
在屏幕中间显示消息,可自定义消息文字,及属性个数

assume cs:code 
data segment               ;字符串及属性定义段,多少个属性就表示有多少行
  word1 db "Welcome to the Beijing Olympic Games!"   ;字符串内容自定义,程序判断居中
  Artibute db 01000010b, 11000010b, 01001010b,00000111b,01110001b    ;有多少个属性值就输出多少行在屏幕中央
  endn db 11111111b
data ends
  
  
va...
阅读全文 | 评论次数(1) | 浏览次数(602) | 所属类型(实验)

[2008-07-22 21:11] 实验8 分析一个奇怪的程序

分析下面的程序, 在运行前思考: 这个程序可以正确返回吗?
运行后再思考: 为什么是这种结果?
通过这个程序加深对相关内容的理解

assume cs:codesg
codesg segment

     mov ax,4c00h
     int 21h

start: mov ax,0
     s:nop
       nop
 
       mov di,offset s
       mov si,offset s2
       mov ax,cs:[si]
       mov cs:[di],ax

     s0:jmp short ...
阅读全文 | 评论次数(1) | 浏览次数(615) | 所属类型(实验)

[2008-07-22 21:07] 检测点 9.3

补全编程, 利用loop指令,实现在内存 2000h段中查找第一个值为0的字节, 找到后,将它的偏移地址存储在dx中.

assume cs:code
code segment
   start:mov ax,2000h
         mov ds,ax
         mov bx,0
       s:mov cl,[bx]
         mov ch,0
         inc cx
         inc bx
         loop s
       ok:dec bx
          mov dx,bx
          mov ...
阅读全文 | 评论次数(1) | 浏览次数(604) | 所属类型(汇编作业)

[2008-07-22 21:06] 检测点 9.2

补全程序, 利用jcxz指令, 实现内存2000H段中查找第一个值为0的字节, 找到后,将它的偏移地址存储在dx中

assume cs:code
code segment
 
   start:mov ax,2000h
         mov ds,ax
         mov bx,0
       s:mov ch,0
         mov cl,[bx]
         jcxz ok
         inc bx
         jmp shorts
       ok:mov dx,bx
          mov ax,4c00h
  ...
阅读全文 | 评论次数(1) | 浏览次数(567) | 所属类型(汇编作业)

[2008-07-22 21:00] 检测点 9.1

(1) 程序如下
assume cs:code

data segment
  db 0
data ends

code segment
  start:mov ax,data
        mov ds,ax
        mov bx,0
        jmp word ptr [bx+1]
code ends
end start
若要使程序中的jmp指令执行后,CS:IP指向程序的第一条指令, 在data段中应该定义哪些数据?

(2) 程序如下

assume cs:code

data segment
  dd 12345678H
d...
阅读全文 | 评论次数(1) | 浏览次数(550) | 所属类型(汇编作业)

[2008-07-22 20:59] 第9章 转移指令的原理

可以修改IP, 或同时修改CS和IP的指令统称为转称指令.

    只修改IP时, 称为段内转移, 比如: jmp ax. 
    同时修改CS和IP时, 称为段间转称, 比如: jmp 1000:0 
  由于转移指令对IP的修改范围不同, 段内转移又分为: 短转移和近转移.

      短转移IP的修改范围为 -128~127 
      近转移IP的修改范围为 -32768 ~ 32767
8086CPU的转移指令分为以下几类

无条件转移指令(如:jmp) 
无条件转移指令 
循环指令(如:loop) 
过程 
中断
CPU在执行jmp指令的时候并...
阅读全文 | 评论次数(1) | 浏览次数(599) | 所属类型(学习笔记)

[2008-07-18 18:18] 实验7 寻址方式在结构化数据访问中的应用

题目太长这次就不打题目了,代码如下: 望指教

assume        cs:codesg

data segment
        db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
        db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
        db '1993','1994','1995'
        ;以上是表示21年的21个字符串

        dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,1404...
阅读全文 | 评论次数(3) | 浏览次数(580) | 所属类型(实验)

[2008-07-18 18:16] 第8章 数据处理的两个基本问题

8.1 bx, si, di和bp

只有这4个寄存器可以用在 "[...]" 中来进行内存单元的寻址.

而且只有以4种组合出现: bx和si, bx和di, bp和si, bp和di

只要在[...]中使用寄存器bp, 而指令中没有显性地给出段地址, 段地址就默认在ss中.



--------------------------------------------------------------------------------

8.2 机器指令处理的数据在什么地方

    指令在执行前, 所要处理的数据可以在3个地方: CPU内部, 内存, 端...
阅读全文 | 评论次数(1) | 浏览次数(521) | 所属类型(学习笔记)

[2008-07-17 15:28] 实验6 实践课程中的程序

(2) 编程, 完成问题7.9中的程序
问题7.9 编程, 将datasg段中每个单词的前4个字母改为大写字母

assume cs:codesg, ss:stacksg, ds:datasg

stacksg segment
        dw 0,0,0,0,0,0,0,0
stacksg ends

datasg segment

        db '1. display      '
        db '2. brows        '
        db '3. replace      '
        db '4. modify       '
datasg ends

...
阅读全文 | 评论次数(3) | 浏览次数(427) | 所属类型(实验)

[2008-07-17 15:26] 第7章 更灵活的定位内存地址的方法

用'......' 的方式指明数据是以字符的形式给出的.

(1)  [idata] 用一个常量来表示地址, 可用于直接定位一个内存单元

(2) [bx] 用一个变量来表示内存地址, 可用于间接定位一个内存单元

(3) [bx+idata] 用一个变量和常量表示地址, 可在一个起始地址的基础上用变量间接定位一个内存单元

(4) [bx+si] 用两个变量表示地址.

(5) [bx+si+idata] 用两个变量和一个常量表示地址....
阅读全文 | 评论次数(1) | 浏览次数(542) | 所属类型(学习笔记)
『 查看更多文章 』