IDENTIFICATION DIVISION.            
PROGRAM-ID. HELLO.                  
ENVIRONMENT DIVISION.               
DATA DIVISION.                      
WORKING-STORAGE SECTION.            
01  AAA.                            
   03 NUM1   PIC 9(3).              
   03 NUM2   PIC 9(3).              
PROCEDURE DIVISION.                 
    MOVE 'JKL123' TO AAA.           
    COMPUTE NUM2 = NUM2 + NUM1.     
    DISPLAY NUM2.                   
    STOP RUN.

本程序中虽然NUM1里的数值是字符'JKL',但一样可以进行四则运算,并且运行的很好。显示结果为:000

这个问题单单从COBOL层面上解释肯定是解释不通的,但从汇编角度理解就很简单了

display型的数据里面存的十进制,但现在程序要进行四则运算,计算机只认识二进制,那怎么办?很简单,转换呗

第一步,先用PACK指令把display型的转换成comp-3型

第二步,用CVB指令把COMP-3型的转换成COMP型的

第三步,进行四则运算

字符'JKL'的十六进制X'D1D2D3',经过第一步后就成了X'123D'(具体怎么转换可以参考PACK指令)。

而我们发现-123的十六进制是X'F1F2D3',经过第一步后也是X'123D'。

所以才有了最后的结果为000

最新文章

  1. Mybatis学习(一)
  2. java.sql.SQLException: null, message from server: "Host '192.168.xxx.xxx' is not allowed to connect to this MySQL server"
  3. doxygen的使用(一)配置并生成文档
  4. Javascript setTimeout 带参数延迟执行 闭包实现
  5. Android--Activity
  6. 掌握 Ajax,第 1 部分: Ajax 入门简介
  7. shadow fight 1.6.0 内购
  8. IOS 疑问记录
  9. Linux下通过shell脚本创建账户
  10. PL/SQL Developer 在windows7 64位系统下连Oaracle11g64位系统的解决经验
  11. Codevs 1814 最长链
  12. KB006: CSS 框模型( Box module )
  13. 使用python操作RabbitMQ,Redis,Memcache,SQLAlchemy 其二
  14. Net Core-Razor
  15. awvs 中文手册详细版
  16. MySQL--当事务遇到DDL命令
  17. 动态获取html页面的内容,并且取其中的某块元素的方法
  18. erlang下lists模块sort(排序)方法源码解析(二)
  19. QWidget扩充父子关系
  20. Ubuntu上安装paparazzi

热门文章

  1. VS Extension: Create a txt file and set the content
  2. centos 下 yum 安装 nginx 平滑切换安装到 Tengine
  3. 《ASP.NET 本质论》HttpApplication的处理管道 ,HttpMoudle,HttpHandler
  4. 对C语言中sizeof细节的三点分析
  5. 转--Server “**” has shut down the connection prematurely一例分析
  6. RxJava学习(一)
  7. Android 自定义ToggleButton+用SharedPreferences保存用户配置
  8. Emmet(前身是zen coding)介绍和使用
  9. !!Python字典增删操作技巧简述+Python字典嵌套字典与排序
  10. 【DataStructure In Python】Python模拟栈和队列