CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他开发语言 >  汇编语言

2002,2001年高程试题

楼主xzgtliu(xzjl)2003-10-03 17:12:08 在 其他开发语言 / 汇编语言 提问

[程序说明]  
   
  本程序将   80   个   ASCII   编码的数字字符转换成   BCD   码(二十进制码),并将每四个   BCD   码压缩在一个字中。见下面图示。  
   
  程序中约定原始数字字符存放在   SJ   开始的连续存区中,转换和压缩结果存放在   YS   开始的连续存区中。  
   
   
  数字字符数据  
     
  地址   ASCII  
  SJ       0033H       '3'  
  +1       0036H       '6'  
  +2       0038H       '8'  
  +3       0032H       '2'  
  ...       ...  
     
  压缩后的数据  
   
  地址   BCD码  
  YS       3682H  
  ...       ...  
   
  [程序]  
   
    Y         START      
              LEA     GR1,0    
              __(1)__      
    S0       LEA     GR3,4      
    S1       LD       GR0,SJ,GR2    
              __(2)__      
              ST       GR0,WK    
              __(3)__      
              OR       GR4,WK    
              LEA     GR3,-1,GR3    
              JNZ     S2    
              ST       GR4,YS,GR1    
              LEA     GR1,1,GR1    
              __(4)__      
    S2       LEA     GR2,1,GR2    
              CPL     GR2,C80    
              __(5)__      
    WL       EXIT      
    SJ       DS       80    
    WK       DS       1    
    CF       DC       #000F    
    C80     DC       80    
    YS       DS       20    
              END    
   
   
  子程序   DEHZ   用来对   HZ   编码的字串做解码处理。  
   
  HZ   编码是海外华人创造的一种将含有高位为   1   的汉字双字节字串转换成易于在网络中传输的ASCII   字符串的变换方式。编码过程中,被转换字符串中的原汉字子字符串各字节高位作清零处理,使之成为   ASCII   子字符串,并在其前后两端分别添加   ~{   和   ~}   作为标记;而对于原   ASCII   子字符串,则将其中的   ~   改写为   ~~,其余字符不变。  
   
  DEHZ   解码子程序则是   HZ   编码的复原过程。复原   ASCII   子字符串过程中遇有   ~~   字符则改写为一个   ~   ,遇有   ~{   则将其后直至   ~}   标记前的各字节高位置1,复原为汉字子字符串,同时删除其前后标记。~的后续字符不属于以上情况均作为错误处理。  
   
  调用该子程序时,   GR1   存放原始字符串首地址,   GR2   存放还原后的目标字符串首地址。工作寄存器     GR3   用作处理汉字子字符串的识别标志,进入子程序时应初始化为处理   ASCII   子字符串。程序按照       CASL   语言的标准约定,字符串的每个字符只占用一个存储字的低八位。原始字符串和目标字符串均以   0   作为结束标志。  
   
  [程序3]  
   
                  START  
   
  DEHZ         PUSH         0,GR3  
   
                  PUSH         0,GR2  
   
                  PUSH         0,GR1  
   
                  LEA           GR3,0  
   
  LOOP         __(1)__  
   
                  CPA           GR0,MARK0  
   
                  JNZ           GOON  
   
                  LEA           GR1,1,GR1  
   
                  LD             GR0,0,GR1  
   
                  CPA           GR0,MARK0  
   
                  __(2)__  
   
                  CPA           GR0,MARK1,GR3  
   
                  JNZ           ERROR  
   
                  __(3)__  
   
                  LEA           GR1,1,GR1  
   
                  JMP           LOOP  
   
  ERROR       OUT           ERS1R,ERLEN  
   
                  JMP           EXIT  
   
  GOON         __(4)__  
   
                  ST             GR0,0,GR2  
   
                  LEA           GR2,1,GR2  
   
                  LEA           GR1,1,GR1  
   
                  CPA           GR0,VO  
   
                  __(5)__  
   
  EXIT         P0P           GR1  
   
                  P0P           GR2  
   
                  P0P           GR3  
   
                  RET  
   
  V1             DC             1  
   
  V0             DC             O  
   
                  DC             #0080  
   
  MARK0       DC             '~   '  
   
  MARK1       DC             '{   }'  
   
  ERSTR       DC             'ERROR!'  
   
  ERLEN       DC             6  
   
                  END  
   
   
  请帮我分析一下 问题点数:20、回复次数:4Top

1 楼xzgtliu(xzjl)回复于 2003-10-04 10:43:37 得分 0

upTop

2 楼xzgtliu(xzjl)回复于 2003-10-07 11:36:23 得分 0

upTop

3 楼yixiao2099(王雨潇)回复于 2003-10-07 15:57:14 得分 0

把你解题的意思说来听听好嘛??Top

4 楼cupidvenus(小鱼儿)回复于 2003-10-14 22:03:11 得分 20

第一题:  
  (1)   LEA   GR2,0    
  (2)   AND   GR0,CF  
  (3)   SLL   GR4,4    
  (4)   LEA   GR3,4  
  (5)   JNZ   S1Top

相关问题

  • 有高程2000年的试题吗?
  • 谁有2000年的高程试题?
  • 请教高程一道试题
  • 谁有2000年10月高程的试题?
  • 1999高程下午试题2答案对吗?
  • TNND,出版书(高程试题解析)的人误人子弟
  • 讨论:2000年高程下午试题2
  • 关于高程99年下午试题3的困惑
  • 谁有2001年高程的试题和答案
  • 哪儿有往年的高程试题下载呀?

关键词

  • 字符
  • 编码
  • dc
  • 转换
  • 数字
  • ds
  • gr
  • 字符串
  • 子程序
  • lea

得分解答快速导航

  • 帖主:xzgtliu
  • cupidvenus

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo