世界首款图形计算器——卡西欧 fx-7000G
【作者声明】
本文所有文字均为作者原创,所有图片均为作者本人亲自拍摄或制作。
版权所有,仅供阅读欣赏,禁止任何单位或个人以任何形式对本文的文字或图片进行包括但不限于复制、转载、引用、抄袭、截图、模仿、翻译、印刷等之中的一项或多项的行为。禁止将本文用于商业用途。
作者保留所有权利,请尊重作者的劳动成果,谢谢合作。
感谢 @電卓院亜紀良 对本篇介绍提供技术支持。
前言
图形计算器,即具有绘制函数图象功能的计算器,通常还附带有编程、存储等功能。目前我们能够使用计算器解决各种各样繁杂的数学问题,这得益于老牌计算器厂家数十年的技术积淀。图形计算器自 1985 年问世以来,一直被人们认为是计算器领域的高端产品的代表。当我们使用图形计算器感叹技术的先进的时候,可曾想到过图形计算器的发展历史,计算器到底经历了怎样的变革呢?
1972 年 8 月,CASIO 发布了世界上的第一款个人计算器——CASIO MINI,当时 12800 日元的震撼低价让计算器只有公司或企业才能购买的时代就此终结,从此计算器走进了寻常百姓家,上市十个月销量即达到百万台。不过鲜有人知道的是,这一年 CASIO 也推出了第一款 fx 系列的台式科学计算器——fx-1,这一系列一直延续到今天。CASIO 仍在为 fx 系列计算器不断地进行技术革新。1985 年 8 月,fx 系列的科学计算器迎来了历史性的跨越,fx-7000G 问世。它是图形计算器的始祖,即世界上第一款图形计算器,开拓了计算器领域的一片新天地,无论是从历史意义还是当时的技术层面,fx-7000G 都是计算器史上的一颗璀璨的明珠。直到现在,我们还能在现在各家的图形计算器中找到 fx-7000G 的影子。
三、四十年前的那个时代,计算器对于我国的人民大众来说是一种奢侈品,即使是最简单的函数型的计算器,也要花费一个中等收入者几个月的工资。对于那个时代的人来说,拥有一台计算器并非易事,更何况图形计算器。这样的历史客观因素,加之多数计算器因时间久远而遭受损坏与废弃,也造成了现在很难见到上世纪九十年代以前的计算器。我们很幸运地得到了一台成色在九成以上新的 fx-7000G,作为宝贵的技术资源,我们在这里给大家作一个详细的介绍,让更多的人瞻仰这台意义非凡的计算器。
外观及基本概况
fx-7000G 机身正面长宽比为 2 : 1,其外壳同时使用了三种材料,按键区域与背面保护壳使用的是铝合金,显示屏区域使用有机玻璃,四周边框则是使用黑色塑料。手动电源开关放在了侧面以达到不显眼的效果,五十个按键方方正正规则地排列在金属面板上。白色的函数功能键与黑色的数字键形成鲜明的对比,再加上第二功能多种颜色印刷记号的点缀,fx-7000G 的机身外观从我们现在的角度来看仍然是非常美观的。
fx-7000G 的基本概况如下:
- 品牌与型号:CASIO fx-7000G
- 产地:日本
- 机身尺寸:14 mm(高)× 83.5 mm(宽)× 167 mm(长)
- 机身重量:约 152 g
- 电源:DC 9.0 V,CR2032 × 3
- 功耗:0.07 W
- 屏幕形式:液晶点阵屏
- 屏幕分辨率:96 × 64,可最多同时显示 8 行 16 列字符
- 显示位数:10 位
- 内部计算位数:13 位
- 输入方式:线性输入,V.P.A.M.
- 变量:A-Z(26 个),最多可扩展至 78 个(A-Z 与扩展的 Z[1]-Z[52],后者占用程序存储空间)
- 程序存储:最多 422 B,供 P0-P9 十个程序使用
- 推出时间:1985 年 8 月
基本计算功能
fx-7000G 虽然作为世界上最早的一款图形计算器,但经过了十多年函数科学型计算器技术基础的夯实,其基本的计算功能已经比较成熟。从八十年代的眼光来看,这款计算器无疑是高端级别的。fx-7000G 具有常规计算(COMP)、进制转换(BASE-N)两种基本计算功能。以下我们就这两种功能进行详细介绍。
【常规计算(COMP)】
首先我们用尖细的物体戳一下背面的 RESET 孔,再拨开计算器侧面的开关。此时计算器屏幕显示初始化的模式与状态:
**** MODE **** ⋯⋯模式状态
sys mode : RUN ⋯⋯系统模式:RUN(运行)
cal mode : COMP ⋯⋯计算模式:COMP(常规计算)
angle : Deg ⋯⋯角度单位:Deg(度数)
display : Norm ⋯⋯显示格式:Norm(常规)
Step 0 ⋯⋯当前屏幕上光标的位置(0)
无论是何种情况,只要将开关由断开拨至闭合,或是自动关机后按 AC 重新打开电源,抑或进行初始化,屏幕都会显示这样的信息。按任意键即可继续进行操作,这里我们按 AC 清屏。清屏之后,屏幕上只剩下一个下划线光标闪烁,我们就此测试内部计算位数与三角函数精度的式子。
可以看到,内部计算位数是13位,三角函数精度测试结果为 9.000000590443,其相对误差约为 6.56e-8。
在上世纪八十年代,CASIO、SHARP 等公司生产的函数型计算器一般采用 10-12 位的内部计算位数,可能在某些情况下会产生精度不足导致运算有偏差的情况,这里挑出几款同期生产的计算器进行对比。
COLLEGE fx-80(显示 8 位,内部 10 位)进行该测试的结果是 8.991161410,相对误差约为 9.82e-4。
fx-3600P(显示 10 位,内部 11 位)的结果是 9.0000157179,相对误差约为 1.75e-6。
SHARP 所生产的 EL-514(显示 10 位,内部 11 位)进行该测试的结果是 9.0000278593,相对误差约为 3.10e-6。
EL-506A(显示 10 位,内部 12 位)的结果是 8.99998762105,相对误差约为 1.38e-6。
可以看到,作为当时的高端机型,其 13 位内部计算位数达到如此的精度也是比较可贵的。
fx-7000G 除配备所有的基本初等函数及角度运算与坐标变换功能外,还拥有 Abs(绝对值)、Int(整数部分提取)、Frac(小数部分提取),可能是出于面向高级用户群体的原因,分数、排列与组合功能被取消掉了。
另外,fx-7000G 也没有搭载微积分的功能,在当时,一般像 fx-180P、fx-3600P 等按键编程的计算器上才有利用数值计算的辛普森法计算定积分的功能,绝大多数计算器都只有初等函数运算,好在 fx-7000G 提供了编程的功能,用户可以自己利用编程来实现更多的功能,例如复数、积分、矩阵等等,官方也提供了诸如辛普森积分等程序的范例。至于现在大家看好的 CAS(Computer Algebra System)功能,则是到了上世纪九十年代才在 CFX-9970G、ALGEBRA FX 2.0、TI-89、TI-92 等图形计算器上出现。
在切换角度或切换显示格式的时候,fx-7000G 会把这样的操作当作一个指令,用户需要按下 EXE 键才会执行,此时返回改变后的 Ans 值,这样的转换方法甚至可以穿插在多个语句的输入中。在常规计算模式下,用户可以用冒号 “:” 分隔多条语句,在语句中亦可使用程序指令,可以用于无需存储的临时程序编写。
测试 fx-7000G 的过程中,我们注意到虽然计算器可以显示多条输入记录,但重现输入历史仅限使用 ← 或 → 按键编辑最近的一条,若按下 AC 键,则输入历史将被清空,无法再现。
fx-7000G 由于使用了全点阵屏,没有像函数型计算器屏幕上方或下方的状态指示符。如果在计算过程中,用户不清楚当前计算器所处的模式或状态,可以通过按住不放 [M]Disp 键查看,松开即回到原来的显示。
Step 值不仅可以确定当前光标的位置,还可以在出错时指出出错的位置,此时用户按 ← 或 → 可以立即到达出错的地方进行修改。
【进制转换与位运算(BASE-N)】
按 MODE、- 即可进入这一模式。Dec、Hex、Bin、Oct 四个进制的转换过程同角度单位或显示格式变换一样,需要按 EXE 键确认。位运算功能包含了 and、or、Neg、Not、xor 五种运算,不过没有 xnor 运算。与 fx-991ES PLUS 相同,四种进制表示的范围不统一,通用转换范围为十进制的 -32768 到 +32767。
【计算速度对比】
在常规计算模式中测试 fx-7000G 计算的速度也十分可观。我们临时编写一段从 1 到 1000 求和的程序:
1→A:1→B:Lbl 1:B+1→B:A+B→A:B<1000=>Goto 1:A
我们分别在 fx-7000G、fx-9860G SD、fx-3650PII 以及 fx-5800P 四台计算器上进行测试,fx-9860G SD 仅仅用了约 3.5 s,fx-7000G 用时约为 24 s,fx-3650PII 用时约为 33 s,而 fx-5800P 则花费了约 37.5 s。可以看到,fx-7000G 的运算速度优于 fx-3650PII 及 fx-5800P。度数单位下测试 20 个 sin 5 相乘,fx-7000G 也仅比 fx-991EX 慢零点几秒。据此,我们可以认为 fx-7000G 的计算速度是很可观的。
【统计计算(SD1 与 LR1)】
fx-7000G 有两对统计模式,分别是 SD1 与 LR1、SD2 与 LR2。SD2 与 LR2 是统计图形绘制模式,我们到后面再介绍,此处介绍 SD1 与 LR1。
以线性回归计算为例,这里我们借鉴同济大学数学教研室主编的《高等数学》(下册,1978 年 10 月版)63 页的例题来计算。
按 MODE、÷ 进入 LR1 模式,按 SHIFT、AC(Scl)、EXE 清除统计数据,输入数据的过程类似于单行函数计算器,不同的是 fx-7000G 把每一条数据当作历史计算记录显示出来了。
数据输入完毕,按相应的统计量(可利用统计量进一步运算)之后按 EXE,即可显示结果。
图形绘制功能
作为世界上第一款图形计算器,虽然在我们现在看来图形功能不太成熟,但对于计算器领域来说,图形绘制功能在 fx-7000G 上见证了从无到有的过程。
【函数图象绘制】
fx-7000G 能够绘制常规的直角坐标下的初等显函数图象。fx-7000G 绘制函数图象不像现在的图形计算器那样有专门的 GRAPH 等模式,而是通过作图命令输入的方式来绘制。这种方式虽然在现在的图形计算器上还有所保留(例如 fx-9860GII 说明书中提到的“手动绘图”),但是我们已经很少使用了。
首先,我们来尝试绘制一个 y=sin x 的图象。调整角度单位为弧度,按键 Graph,输入sin、X,按 EXE 即可作出图象。
fx-7000G 使用了分辨率为 96 × 64 的显示屏,直到现在,像 TI-84 Plus 等经典的图形计算器仍然在使用这样的分辨率。我们把 fx-7000G、TI-84 Plus、fx-9860GII 三者放在一起作绘图速度的对比,图像显示范围为 x 轴从 -4.7 到 4.7,y 轴范围从 -3.1 到 3.1,fx-9860GII 使用初始窗,作图范围限制在区间 [-4.7,4.7]。结果大约分别为 fx-7000G:6 s,TI-84 Plus:4.25 s,fx-9860GII:1.1 s。我们对于老计算器的印象总是觉得画图很慢,然而这台世界上最早的图形计算器并没有让我们失望。
现在我们来使用 Trace 键跟踪图象坐标。fx-7000G 在按下 Trace 键之后,再按 ← 或者 → 显示当前点的横坐标值,对应的像素点处出现闪烁,由于闪烁的点只有一个,需要仔细看才能看出当前的点。
如果需要查看纵坐标的值,需要按键 SHIFT、↓(X<->Y),此时再按 ← 或 → 即显示每个点的纵坐标值。
Range 键用于调整视窗,Factor 键用于指定视窗缩放因子。
Plot 键可以在图象的指定坐标上绘制一个点,绘制之后该点会闪烁。
如果先用 Plot 命令在图象上指定一个点,再使用 Factor 缩放时会以该点为中心操作。
结合 Plot 键和 Line 键,还可以在已经作出的函数图象上继续绘制线段。
绘制完图像后,计算器不会自动将图像清除,而是保留当前的图像信息,按 G<->T 键可以实现图像界面与指令编辑界面的切换。如果要清除图像内容,用户需要手动输入 Cls 命令并按 EXE 来清除历史图形绘制。
虽然 fx-7000G 没有丰富的图象分析能力,但用户仍然可以在程序中使用图象绘制功能来实现图象分析或者绘制复杂的图形,例如 CASIO 官方就为 fx-7000G 用户提供了机械振动曲线的绘制以及磁滞回线的绘制两个复杂程序案例。
我们注意到,fx-7000G 没有函数编号存储的队列(即 Y1、Y2、Y3⋯⋯),当我们要一次绘制多个图像的时候,可以用 “:” 连接作图命令,如:
Graph Y=x^2:Graph Y=sin x:Graph Y=ln x
如此按 EXE 即可一次绘制所有的图象,但存在一个问题,就是 Trace 只能跟踪最后一个图象。
【统计图形绘制】
SD2 和 LR2 模式被用于绘制统计图形。在 SD2 模式中,用户可以为单变量统计数据绘制直方图、折线图以及正态分布曲线;在 LR2 模式中,用户可以绘制散点图以及线性回归直线,对于其他回归模型曲线,官方也为用户提供了一套程序。
SD2 单变量统计模式
本小节使用官方说明书上的范例。
进入 SD2 模式后,用户首先要根据数据的最值来确定图形的显示范围,按 Range 键进行设置。
然后根据区间确定小区间数目,按 MODE、.(小数点,Defm),输入小区间数,为每一个小区间分配额外变量(该操作相当于定义额外变量,此时计算器会显示编程剩余字节数信息)。
清空统计数据之后,输入数据。
此时,直接按 Graph、EXE(即输入命令 Graph Y=),计算器就显示出直方图了。
如果要显示折线图,按键 Graph、SHIFT、Line、EXE(即输入命令 Graph Y=Line),即可在原来直方图的基础上用折线图包络,当然可以先执行 Cls 指令来绘制没有直方图背景的折线图。
如果需要推断总体概率的分布,我们可以改变视窗值的 Y 坐标范围,输入Graph Y=Line1 来得到由样本数据估计出的正态分布概率密度曲线。
LR2 线性回归模式
进入 LR2 模式,我们仍然沿用上面的例子。首先根据数据设置合适的视窗值,然后清空数据,再输入数据。
在输入数据的过程中,我们发现每输入一个数据之后,计算器立即切换到图形界面显示出刚刚输入过的数据点,再次输入的时候自动回到数据输入界面。
我们现在手中的图形计算器基本上都是先把数据输入完毕再绘图,近年来,一些图形计算器中内置的“教学探索”模式,其灵感可能就来源于此。
当我们把数据输入完毕之后,散点图也就作好了。
这时候输入命令 Graph Y=Line1,即可得到回归曲线的图形。
程序编写与运行功能
fx-7000G 作为图形计算器之祖,不仅有图形绘制的功能,还有程序编写与运行的功能。正是依靠这个功能,fx-7000G 才不至于只会单调地画几个函数图象或者画几幅统计图就停滞不前了,程序功能为 fx-7000G 的图形功能锦上添花,也可以说两者是相辅相成的。
按 MODE、2,进入WRT(WRiTe,程序编写)模式。
从进入该模式的第一个界面可以看到,计算器的系统模式由 RUN(运行)改为了 WRT(程序编写),并在下方注明剩余字节数,以及程序存储区的使用情况。用户可以在计算器上存储 P0-P9 十个程序,如果某个程序区已存储有程序,对应的编号将变为一个下划线。
编辑程序的时候,按 [M]Disp 键可以查看当前编辑的程序以及光标的位置。
fx-7000G 编程指令有输入、输出、标号跳转、条件跳转、关系判断、递增递减等,这样的指令虽然没有现在的图形机丰富,但在当时的背景下,用户仍然可以利用这些编制出较复杂的程序。由于 fx-7000G 的程序功能在现在的可编程计算器上仍然能够完美照搬,这里就不再赘述。
计算器内部结构
铝合金后盖内部,由日文与英文两种语言写出的电池更换注意事项。
黑色塑料后盖内外与电池仓。
卸下螺丝拿掉黑色塑料后盖之后的样子。
电源开关与弹簧。电源开关使用导电薄膜,利用其弹性实现电源的通断。
卸下电路板,我们可以看到薄膜按键。fx-7000G 使用连成一体的两块橡胶按键,按键灵敏,手感较舒适。
电路板以及上面的元件。
将计算器装好复原。
总结
这是计算器发展史上的一座丰碑,CASIO 以其 “从 0 到 1” 的创新精神,开辟了图形计算器这一新天地。继 fx-7000G 之后,像 Texas Instruments 等全球为数不多的几家具有自主设计、生产计算器能力的公司开始丰富图形计算器的性能与样式,相继出现了一系列的优秀的图形计算器型号。饮水思源,我们在赞叹如今的图形计算器拥有数不清的花样玩法的同时,也应该向当年默默地设计开发计算器的人士致以崇高的敬意。尊重原创,尊重技术,尊重正版,这是我们每一个人需要做到的。计算器尚且如此,现代科学技术的发展离不开前人打下的基础,长时间积累下来的技术与经验,为我们如今的学习、工作及生活谱写出生动的乐章。