中华农历论坛知识讨论区历法知识 → [原创]建多维数组词汇(源代码)


  共有12640人关注过本帖树形打印

主题:[原创]建多维数组词汇(源代码)

帅哥哟,离线,有人找我吗?
秦汉昌
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
[原创]建多维数组词汇(源代码)  发帖心情 Post By:2009/9/21 15:42:00

 

\ *****************************************************************************多维数组


编 计算多维数组位置   
       ( 行 列 *** 维 地址 --- 地址  )
       { \ 数组名址 -- }  0  写入  数组名址
       ∽  ∽  读 =
       就   ♂  写入  数组名址  ↑↓  1+   1      
            ?循环    数组名址  读  √  数组名址  读  内环数
                    ?循环  数组名址  内环数  单元*+  读  *
                     回环   
            回环     数组名址 读 1
            ?循环   +
            回环   3 *  单元*+  数组名址 读  单元*+
      否则   0 字串" 您输入的维数与原数组不符" 系统对话框 ♀
      然后
      。

编 建多维数组     
       ( 行 列  *** 维 -<名称>- )    \ compile time
       ( 行 列 ***  维 --- 值 )     \ runtime
       { \ 多维求积 -- }  1 写入  多维求积
       建词   ♂ 可用地址  写  ♂ 1 >
       就     1- 1  ↑↓  
             ?循环  1+  ♂  可用地址 内环数 单元*+ 写
                   多维求积 *  写入  多维求积  -1      
             +回环
      然后   多维求积 12 * *
            可用地址 可用地址 单元*+  ∽ 3 单元*+  字节空出  ↑↓ 填0 
            动作  计算多维数组位置   实数读
        。

  编 写入多维数组 
        ( 值 行 列 ***  维 -<名称>- )
        找 >实体域 编解态 读
        就    强编译 立即数
              编译 计算多维数组位置  \  再编译
              编译 实数写
        否则   计算多维数组位置 实数写
        然后
        。

\ *************************秦汉昌在系统词二维数组的基础扩充*****************************

 

 

测试如下:

 

8 1 建多维数组 一维数组 ★.
897 8 1 写入多维数组 一维数组 ★.
8 1 一维数组 显 897 ★.
8 9 2 建多维数组 二维数组 ★..
589 8 9 2 写入多维数组 二维数组 ★..
8 9 2 二维数组 显 589 ★..
8 9 10 3 建多维数组 三维维数组 ★..
4568 8 9 10 3 写入多维数组 三维维数组 ★..
8 9 10 3 三维维数组 显 4568 ★..
8 9 10 11 12 13 6 建多维数组 六维数组
出错提示: "六维数组" 超出代码区可用空间!
8 9 10 11 12 5 建多维数组 五维数组 ★
78965 8 9 10 11 12 5 写入多维数组 五维数组 ★
8 9 10 11 12 5 五维数组 显 78965 ★
   编程心得:
    多维数组程序,实现了通用化,可以建一、二、三、四、五等多维的在一定空间范围内的数组

   但是,目前发现,由空间限制,无法实现建空间超大的数组

   不过,我认为,汉编多维数组,特别是空间太大的数组,作用不大,汉编的特色是,运用数摞的灵活操作,我们之所以要对数组进行这方面的探索,目的是要掌握多方面的技术处理方案,而在一般的编程应用中,我们应该不提昌建种复杂的数组,应该利用数摞对数据灵活操作,把不必留的数据及时清除,以释放空间,节约资源。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
秦汉昌
  2楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2009/9/22 14:08:00

初学者先不必去深研它的源代码,只要能看懂后面的测试内容就可以:

 

    测试内容很好懂的,建多维数组   这个词,以维数和每维元素的个数及数组名为参数,比如,

    1、要建一个 三维数组,可以可以这样:

         4 5 6 3  建多维数组 三维数组

 

      其中,4 5 6 是指各维元素的数目,3 是指所建数组的维数值,三维数组,是数组名,把这些参数这样排列,就可以建一个数组了。

    2、把内容写入数组:

      456.30   0 1 0 3  写入多维数组  三维数组

     这样,就将实数456.30写入了数组名为“三维数组”的0 1 0 这个单元(0 1 0 这三个数应该好理解,在C语言中叫数组的下标),3 是指数组的维数,之所以要设置这个参数,是为了检验数组的维数,只有与所创建时相符才能写入,否则会报错,这样就确保了写入数据的准确性。

     将数据写入数组需要以下参数:

    A、要写入的数据,最大可以写入12个字节大小的实数或整数,如果是字符,可以将其地址写入保存;

    B、写入位置,即标识单元位置 的N个数字,比如,三维数组,我们就用三个数来标识某单元的位置

    C、数组的维数,用一个整数标识

    D、写入的数组  的名称,即已经创建好了的数组的名称

    3、读取数组内容格式如下:

        0 1 0 3 三维数组 

      这样就可以格式读取数组名为“三维数组”0 1 0 单元中的数据,0 1 0 表示读取位置 ,3表示维数,三维数组是数组名

    如果按照前面格式将456.30写入三维数组的0 1 0 单元,那么

     执行   0 1 0 3 三维数组     指令,数摞上会产生一个数,即456.30

     执行上面的指令,我们看不到这个数,必须执行一个指令查看,具体办法如下:

   A、执行   看数摞  这个词,数摞上的数就会显示出来,执行这个词,仅仅查看了数摞上的数而已,数摞上的数并不会发生变化:

   B、执行  显   这个词,这个词可以将数摞顶层的一个数显示出来,并将所显示的数从数摞上删除。

   以上两种方法都可以实从查看数组的读取结果,但是,第一种方法对数摞没影响,而第二种方法会将所显示的内容同时从数摞上删除。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

[原创]建多维数组词汇(源代码)








签名