新浪首页 > 新浪教育 > 考试中心 > 自学考试 > 正文

《自考不难》之五:具体课程学习方法篇(2)

http://www.sina.com.cn 2002/09/13 13:21  北京自考热线

  作者:阿广

  《汇编语言程序设计》的试验考试比较灵活,考生应全面细致的掌握基本理论,充分理解每一条指令,并且能独立编制程序。

  北京大学的考试环境:

《自考不难》之五:具体课程学习方法篇(2)

  (1)操作系统:DOS6.22

  (2)文本编辑器:EDIT.EXE

  (3)汇编程序:MASM.EXE

  (4)连接程序:LINK.EXE

  (5)调试程序:DEBUG.COM

  考试的主要内容分三大部分:输入、输出、数制转换

  一、显示字符:“HELLO GOOD MORNING!”

  DATA SEGMENT

  NOTE DB‘HELLO GOOD MORING!’,’$’

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  BEGIN: MOV AX,DATA

  MOV DS,AX

  MOV DX,OFFSET NOTE

  MOV AH,09H

  INT 21H

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END BEGIN

  二、显示2位BCD码

  DATA SEGMENT

  NUM DB 52

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  START: MOV AX,DATA

  MOV DS,AX

  MOV BL,NUM

  MOV CH,2

  RO: MOV CL,4

  ROL BL,CL

  MOV DL,BL

  AND DL,0FH

  ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  三、显示4位十六进制

  DATA SEGMENT

  NUM DW 3ATC

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  START: MOV AX,DATA

  MOV DS,AX

  MOV BX,NUM

  MOV CH,4

  RO: MOV CL,4

  ROL BX,CL

  MOV DL,BL

  AND DL,OFH

  CMP DL,9

  JLE ADDR

  ADD DL,7

  ADDR: ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  四、两个2位十进制数相加,显示和

  CODE SEGMENT

  ASSUME CS:CODE

  START: MOV AL,36

  ADD AL,48

  DAA

  MOV CH,2

  RO: MOV CL,4

  ROL AL,CL

  MOV DL,AL

  ADD DL,OFH

  ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  五、两个4位十六进制数相加,显示和

  DATA SEGMENT

  NUM DW 3A54,648B

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  START: MOV AX,DATA

  MOV DS,AX

  MOV BX,NUM

  ADD BX,NUM+2

  MOV CH,4

  RO: MOV CL,4

  ROL BX,CL

  MOV DL,BL

  AND DL,0FH

  CMP DL,9

  JLE ADDR

  ADD DL,7

  ADDR: ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE ROTATE

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  说明:

  (1)以上只是最基础的程序,希望大家一定要掌握,并能举一反三,考试是综合各方面内容的,其程序不会少于100行

  (2)汇编考题范围广,我们不能像《微型计算机及其接口》一样,死抱8255和8253就行,还希望大家能在考前多练习编程才可以

  (3)常用的DOS系统功能调用一定要熟悉,尤其是输入、输出方面的(教科书P168 ~ P172)

  试题举例:

  (1)从键盘输入2个十进制数,其和用二进制显示,其差用八进制显示,其乘积用十六进制显示

  (2)从键盘输入1个字符串,统计其中的字符。大写字母个数用二进制显示,小写字母个数用八进制显示,数字的个数用十进制显示,其他字符用十六进制显示

  附:DEBUG的基本用法

  DEBUG是个调试软件,能比较方便的找到错误,其功能非常强大,使用也比较复杂。我们只介绍简单的用法(不会用DEBUG调试,并不影响考试)

  (1)-a汇编器,从100H开始

  (2)-g执行,-g[地址断点],执行到[地址断点]结束

  (3)-a100改100H处程序

  (4)-e101改101H地址处的内容

  (5)-d100显示内存中的内容;显示机器指令

  (6)-u100机器指令〉汇编指令

  (7)-q退出

  预祝大家顺利通过试验考试!

  本站及作者关于《自考不难》系列文章的联合声明:《自考不难》系列文章是由本站特约作者“阿广”供本站的专稿,版权归本站和作者本人共同拥有。其他网站如需转载,必须注明文章的来源及作者,然后请在转载后及时通知本站或作者,告知文章转载的去向。另外,作者本人绝对不希望看到《自考不难》的文章被抄袭,谢谢大家的合作。

  我的email: livefun@163.com oicq: 197917

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

  [相关评论]

  发表人:自考不难

  发表人邮件:livefun@163.com

  有一些书写错误,给大家带来不便,非常抱歉!

  原文更正如下:

  《自考不难》----具体课程学习方法

  《汇编语言程序设计》试验指导(北京大学主考)

  2002.7.5

  《汇编语言程序设计》的试验考试比较灵活,考生应全面细致的掌握基本理论,充分理解每一条指令,并且能独立编制程序。

  北京大学的考试环境:

  (1)操作系统:DOS6.22

  (2)文本编辑器:EDIT.EXE

  (3)汇编程序:MASM.EXE

  (4)连接程序:LINK.EXE

  (5)调试程序:DEBUG.COM

  考试的主要内容分三大部分:输入、输出、数制转换

  一、显示字符:“HELLO GOOD MORNING!”

  DATA SEGMENT

  NOTE DB‘HELLO GOOD MORING!’,’$’

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  BEGIN: MOV AX,DATA

  MOV DS,AX

  MOV DX,OFFSET NOTE

  MOV AH,09H

  INT 21H

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END BEGIN

  二、显示2位十六进制

  DATA SEGMENT

  NUM DB 52H

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  START: MOV AX,DATA

  MOV DS,AX

  MOV BL,NUM

  MOV CH,2

  RO: MOV CL,4

  ROL BL,CL

  MOV DL,BL

  AND DL,0FH

  ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  三、显示4位十六进制

  DATA SEGMENT

  NUM DW 3AFCH

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  START: MOV AX,DATA

  MOV DS,AX

  MOV BX,NUM

  MOV CH,4

  RO: MOV CL,4

  ROL BX,CL

  MOV DL,BL

  AND DL,0FH

  CMP DL,9

  JLE ADDR

  ADD DL,7

  ADDR: ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  四、两个2位数相加,显示和(采用压缩的BCD码调整)

  CODE SEGMENT

  ASSUME CS:CODE

  START: MOV AL,36H

  ADD AL,48H

  DAA

  MOV BL,AL

  MOV CH,2

  RO: MOV CL,4

  ROL BL,CL

  MOV DL,BL

  AND DL,0FH

  ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  五、两个4位十六进制数相加,显示和

  DATA SEGMENT

  NUM DW 3A54H,648BH

  DATA ENDS

  CODE SEGMENT

  ASSUME CS:CODE, DS:DATA

  START: MOV AX,DATA

  MOV DS,AX

  MOV BX,NUM

  ADD BX,NUM+2

  MOV CH,4

  RO: MOV CL,4

  ROL BX,CL

  MOV DL,BL

  AND DL,0FH

  CMP DL,9

  JLE ADDR

  ADD DL,7

  ADDR: ADD DL,30H

  MOV AH,2

  INT 21H

  DEC CH

  JNE RO

  MOV AH,4CH

  INT 21H

  CODE ENDS

  END START

  说明:

  (1)以上只是最基础的程序,希望大家一定要掌握,并能举一反三,考试是综合各方面内容的,其程序不会少于100行

  (2)汇编考题范围广,我们不能像《微型计算机及其接口》一样,死抱8255和8253就行,还希望大家能在考前多练习编程才可以

  (3)常用的DOS系统功能调用一定要熟悉,尤其是输入、输出方面的(教科书P168 ~ P172)

  试题举例:

  (1)从键盘输入2个十进制数,其和用二进制显示,其差用八进制显示,其乘积用十六进制显示

  (2)从键盘输入1个字符串,统计其中的字符。大写字母个数用二进制显示,小写字母个数用八进制显示,数字的个数用十进制显示,其他字符用十六进制显示

  附:DEBUG的基本用法

  DEBUG是个调试软件,能比较方便的找到错误,其功能非常强大,使用也比较复杂。我们只介绍简单的用法(不会用DEBUG调试,并不影响考试)

  (1)-a汇编器,从100H开始

  (2)-g执行,-g[地址断点],执行到[地址断点]结束

  (3)-a100改100H处程序

  (4)-e101改101H地址处的内容

  (5)-d100显示内存中的内容;显示机器指令

  (6)-u100机器指令〉汇编指令

  (7)-q退出

  预祝大家顺利通过试验考试!



评论】【推荐】【 】【打印】【下载点点通】【关闭


新 闻 查 询
关键词

MP3 手机 相机
 
服饰 首饰 护肤

旅游 电脑 礼品

精品折扣一拍网

热 点 专 题
第77届奥斯卡盛典
驾驶员培训新大纲
世界新闻摄影比赛
英语四六级考试改革
骑士号帆船欧亚航海
CBA全明星赛阵容公布
上海地产面临泡沫破灭
京城在售楼盘分布图
刘晓庆文集:自白录
 
 ⊙ 分类信息 立の本环保电池出租店 让湿疣、疱疹不再复发 糖尿病肝病05年展望
·开“麦当劳”式的快餐店 ·做教育代理成网络富豪 ·高血压人要“解放”! ·新产品营销诚招代理
·千百度华芳利润惊人! ·百姓05年干啥最赚钱 ·让湿疣疱疹不再复发! ·最新的医药健康资讯
·哇!电池出租年利百万 ·投资烧烤-鸡年送大礼 ·专业隆胸让我“挺”放心 ·新年新业 新浪创业!
·开唐林香烧鸡烤鸭店 ·投资壹万年利十五万? ·高血压患者的康复圣地 ·新浪会展新年送大礼
 


教育频道意见反馈留言板 电话:010-82628888-5227 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2005 SINA Inc. All Rights Reserved

版权所有 新浪网
北京市通信公司提供网络带宽