罗马数字比阿拉伯数字早 2000 多年,起源于古罗马。
大约在两千五百年前,罗马人还处在文化发展的初期,当时他们用手指作为计算工具。为了表示一、二、三、四个物体,就分别伸出一、二、三、四个手指;表示五个物体就伸出一只手;表示十个物体就伸出两只手。这种习惯人类一直沿用到今天。人们在交谈中,往往就是运用这样的手势来表示数字的。
当时,罗马人为了记录这些数字,便在羊皮上画出 Ⅰ、Ⅱ、Ⅲ 来代替手指的数;要表示一只手时,就写成“Ⅴ”形,表示大指与食指张开的形状;表示两只手时,就画成“ⅤⅤ”形,后来又写成一只手向上、一只手向下的“Ⅹ”,这就是罗马数字的雏形。
后来为了表示较大的数,罗马人用符号 C 表示一百。C 是拉丁文“centum”的头一个字母,centum 就是一百的意思(英文“century”就是由此而来)。用符号 M 表示一千。M 是拉丁文“mille”的头一个字母,mille 就是一千的意思。取字母 C 的一半,成为符号 L,表示五十。用字母 D 表示五百。若在数的上面画一横线,这个数就扩大一千倍。这样,罗马数字就有下面七个基本符号:I(1)、V(5)、X(10)、L(50)、C(100)、D(500)、 M(1000)。罗马数字与十进位数字的意义不同,它没有表示零的数字,与进位制无关。所以当时的人们表示0用空格表示。
罗马数字是阿拉伯数字传入之前使用的一种数码。其采用七个罗马字母作数字、即Ⅰ(1)、X(10)、C(100)、M(1000)、V(5)、L(50)、D(500)。记数的方法:
相同的数字连写,所表示的数等于这些数字相加得到的数,如 Ⅲ=3;
小的数字在大的数字的右边,所表示的数等于这些数字相加得到的数,如 Ⅷ=8、Ⅻ=12;
小的数字(限于 Ⅰ、X 和 C)在大的数字的左边,所表示的数等于大数减小数得到的数,如 Ⅳ=4、Ⅸ=9;
在一个数的上面画一条横线,表示这个数增值 1,000 倍,如=5000。
它的产生晚于中国甲骨文中的数码,更晚于埃及人的十进位数字。但是,它的产生标志着一种古代文明的进步。
我国 20 世纪 60~70 年代发行的第三套人民币冠字号码中也采用了罗马数字。此外,在书稿章节及科学分类时也有采用罗马数字的。
21 世纪,罗马数字已是一种应用较少的数量表示方式。罗马数字主要用于某些代码,如产品型号等。有的钟表表面仍有用它表示时数的。计算机 Unicode码收录有合体的罗马数字 1~12和50、100、500、1000。由于书写繁难,所以后人很少采用。
遗憾的是,罗马数字里没有 0。这种记数法有很大不便。如果表示 8732 这个数、那么就得写成 ,如果要有 0 就方便多了。0 引入的时间是在中世纪,那时欧洲教会的势力非常强大,他们千方百计地阻止 0 的传播,甚至有人为了传播 0 而被处死。