• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >汇编语言 > 汇编语言程序设计(一)

汇编语言程序设计(一)

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2017-06-28

匿名通过本文主要向大家介绍了汇编语言程序设计,汇编语言程序设计教程,汇编语言程序设计pdf,arm汇编语言程序设计,8086汇编语言程序设计等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

 

学习任何一种艺术,只能从瞭解观念及熟练地运用工具、技巧上下功夫。至于个人的成就及表现,有待于不断地自我要求和探索,不是仅仅通过学习就可以轻易获得的。
组合程式的写作亦然,虽说尚有时、空效率的客观标准,但是一个功能复杂、应用广泛的程式,其价值的全面评估却非如此单纯。要言之,目前这种组合程式艺术仅在启蒙阶段,尚无成规可循,必须到大众都认识到其价值时,才会有定论。
因此,我只能在此举一个例子,说明程式写作的观念,希望读者能够举一反三,灵活应用。

第一节 主题认识

一、任务

兹假定有一任务,是要设计一些应用符号,其过程由编码到将符号绘制完成为止。这是一个实际且实用的例子,我利用仓颉码定义符号码,并以程式处理之,既精简,又快速。事实上,字形产生器就是利用类似原理设计的,在此特为参考。
这些应用符号,是用来画表格,要与文字混用,故将各种表格符号,分解成为文字字符,并予以定码。
首先考虑编码,在此,「编码」就是前面所说的「资料设计」。一种考虑周全的编码,在程式处理上,可以节省大量的时间和空间; 对使用的人而言,循着一种规则,也可达到易记易用效果。
要达到上述目的,必须先瞭解一些相关的因素,只要把这些因素纳入考虑范围,且其结果能表现在所编的「码」中,上述的任务就达成了。
这些相关的因素是:
1,编码的限制:
仓颉码取一至五码,限用 24 个字母,此类符号也不 能例外。要能与中文字同时输入,而且不能混淆,故不能 与已存在的中文字码有重码的情况发生。

2,功能的需求:
假定要设计四种不同粗细的格子,且每种皆能相互配 合。如:

┌ ┬ ┬ ┬ ┬ ┐ ┌ ┬ ┬ ┬ ┬ ┐

├ ┼ ┼ ┼ ┼ ┤ ├ ┤

├ ┼ ┼ ┼ ┼ ┤ ├ ┤

├ ┼ ┼ ┼ ┼ ┤ ├ ┤

├ ┼ ┼ ┼ ┼ ┤ ├ ┤

└ ┴ ┴ ┴ ┴ ┘ └ ┴ ┴ ┴ ┴ ┘
图 一
┌ ┬ ┬ ┬ ┬ ┐ ┌ ┬ ┬ ┬ ┬ ┐

├ ┤ ├ ┤

├ ┤ ├ ┤

├ ┤ ├ ┤

├ ┤ ├ ┤

└ ┴ ┴ ┴ ┴ ┘ └ ┴ ┴ ┴ ┴ ┘

│ │ │ │ ─ ─ ─ ─
图 二

二、分析

以上符号共有 104种形状(后来我发现不敷应用,又加入一些图形)可以细分为四类,分别为:

横向,左右延伸,上下等距。
纵向,左右等距,上下延伸。
横向,或左或右,上下等距。
纵向,或上或下,左右等距。

由此可知,我们已经能够定出其规律:
1,只有纵向横向,皆连接于格子的中央点。
2,只有四个位置,即上、下、左、右。
这种归纳方法相当有用,因为我们发现了二进位的影子,正该加以利用。
先以四个位置来考虑,上下形即为纵向,左右形为横向,是个标准的二进位结构,如果以对角线来看,左、上,右、下又可以组成另一维二进位,可以各用一个位元来表示。我选用了四种粗细,以凑成四个位元。以一字元示意(x 表与该性质无关的位元)如下:

凡属细点者: xxxxxxx0
凡属粗点者: xxxxxxx1
凡前述点不加粗: xxxxx0xx
凡前述点粗细加倍:xxxxx1xx
凡属于横向者: xxxxxx0x
凡属于纵向者: xxxxxx1x
凡属于左上者: xxxx0xxx
凡属于右下者: xxxx1xxx

以上各值用了四个位元,共有16种组合,若以码代表之,其组合数当视取码数而定。再参考图一,每种因素取一码,横、直、位置共有四种,结论是最多应取四码。
取四码虽然理想,但仓颉码的设计原本是为了全部六、七万个中文字,而文字的产生为约定俗成,不可能恰好有一连续空余的四码区段,可以安排表格码。
我在输入码的组合中,好不容易找到一区,即YYX 码后,没有已存在的中文字,故此决定把表格码安排在此区。
仓颉码最多取五码,YYX 已用去三码,仅余两码可用。
再看前面的分析,只有16种组合,而符号有24个之多。这种搭配很不理想,需要再加考虑。
需要取三、四码的,都是要贯穿格子中心的形状,如果再设几个贯穿格子的形状,也当作基本图形,则每个图形仅取两码即可。
到底我们要多少贯穿形呢?八个!(见图二)八加十六,恰恰好廿四个,完全符合我们前面所强调的精简法则。
这几种定义,实际上仅需将第五个位元设为一即可:
凡属半形者: xxx0xxxx
凡属贯穿形者: xxx1xxxx
最后,这24个码再加 41H就可以得到与文字相等的码值,读者如有兴趣,不妨试着将这些码的值求出,今后应用时就可循着这种思路得出其输入码,而不必死记。
不过,编码还没有完成,因为在电脑中,一字一代码是相当重要的原则,精确、效率都建立在这个原则上。假如有一代码所代表的形状,与其他代码所代表者相同,就相当于有「重码」字,这种情况应设法避免。此外,为了便于使用,取码也应依一定规则,配合字母顺序,且以符合程式的处理为宜。
例如 YYXAK与 YYXKA所得形状完全相同,要避免困扰,应规定依字母顺序,只有 YYXAK为有效码。
又如 YYXAI所得之形,为左侧细横加右侧细横,相当于一条贯穿的细横。而这种横与 YYXU 一码完全雷同。必要时,可以仅以 YYXU 为正确码,将YYXAI, YYXBJ, YYXCK, YYXDL, YYXEM, YYXFN, YYXGO, YYXHP等码建表拦掉。
注:关于这一点,由于我当年的疏忽,编错了几个,若现在改过来,就会造成过去所建资料不能再用的痛苦,所以从事规划者,千万慎始!

 

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 汇编程序设计
  • 宏汇编
  • 汇编教程:虚拟设备驱动程序结构
  • 一个win32汇编语言程序示例
  • 汇编语言程序设计(一)
  • 汇编语言程序设计(二)
  • 汇编语言程序设计(三)
  • 汇编语言程序设计(五)

相关文章

  • 2017-06-28消息钩子使用教程
  • 2017-06-17减运算指令
  • 2017-06-28列表视图控件介绍
  • 2017-06-1780x86寻址方式
  • 2017-06-28汇编语言套装软件制作(2)
  • 2017-06-28汇编教程:控制转移(2)
  • 2017-06-28汇编源码系列之basload
  • 2017-06-28汇编源码系列之brk
  • 2017-06-28Win32汇编的环境和基础
  • 2017-06-28汇编源代码之简单密码输入

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 各种进位计数制
    • 汇编源码系列之clock
    • 堆栈操作指令
    • 子程序调用指令
    • 汇编语言上机过程指导及示例
    • 树型视图控件详解
    • 汇编结构类型转换快速操作
    • 建立汇编语言的工作环境
    • SHELL排序测试
    • 汇编源码系列之getsect

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有