十六进制转化为ASCII码引起的的进制的故事

简介:
     机器语言是用0和1来处理问题的,在C语言中通过设定不同的显示格式在屏幕上将显示不同的进制格式的数据,比如:十六进制,八进制,二进制,十进制等等,这些都是常用的一些进制.
    回想起关于进制的故事还是很多的,曾经刚刚开始接触进制这些东西的时候确实很不理解,为什么要这样表示数据了?
    我们的手指头有10个,小学的时候做算术题,特别的给力,还记的小学一年级的老师刚刚把算术题往黑板上一些,同学们纷纷伸出手,快速的瓣着指头,惟恐落后.那时候十进制已经在我们的童年生活留下了很深刻的印象.
    有时候运算量大了,或者超过了20或者50,太大,记不住用了多少次两只手,恨不得用上脚指也来运算.
     我们的生活总还有很多关于进制的使用。
   曾经的半斤八两的故事,就可以说明十六进制的使用已经有很久的历史了。
   当初的接触的二进制时候,老师只是讲到0和1在物理电气上很容易实现。实际上进制的使用可是说让我们的生活增添了不知多少色彩。
 
   二进制:
   中国的阴阳,就是一阴一阳
   自然的白昼,黑夜和白天
   当然性别是不能用二进制来讲,因为男不能说加男等于女,或者女加上女等于男。不过可以用0和1来表示男和女。我们在程序设计中数据库中存储性别的时候就用布尔类型来表示性别,用false来表示男,用true表示女,这样就可以用0表示男和1表示女。
 
   七进制:
    星期就是用七进制来表示
 
   八进制:
   八进制在计算机中经常使用,我们的一个字节正好是8bit。
 
    十二进制:
     我们的年的表示就用月来表示,12个月表示一年,这就是12进制的一种体现。
    当然月份我们不能说30,或者31进制,因为月份的天数并不是确定的。
    中国的十二生肖也算是一种十二进制的表示,每个十二年就一个轮回。
 
    十六进制:
     十六进制在计算机和科学计算中还是比较常用的。
     我们可以用四位二进制来表示一位十六进制,十六进制的表示是:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
     我国古代的重量计数就是用十六进制表示,这样就有了“半斤八两”,当然这个词现在是一个贬义词,因为现在我们的重量计数早已经用十进制来表示了。
 
      二十四进制:
     1天=24小时,这是我们生活中常见的一种二十四进制的使用。
    我们国家的进制使用可以说是包罗万象,二十四进制也不例外。我们的二十四节气,就是一个很好的例子。
 
      六十进制:
      想起六十进制就不可思议。曾经有这么一句描述年龄的诗句:“花甲重逢增添三七岁月”,这就表示了141岁的年龄,“古稀双庆再过一度春秋”,这也表示141岁。不过花甲确实也在我国是一种进制的使用,这就是六十进制。一个甲子年就是60个春秋,而且这在我们的生活中经常使用,而且还具有着重大的纪念意义等等云云。
      还有就是我们的时间中分钟和秒分别都是用60进制来表示的。     1分钟=60秒   1小时=60分钟
    下面是汇编语言中十六进制数转化为ASCII码后在DOS窗口显示的代码:
 
 
  1. data segment  
  2.      ;asc db 4 dup(?)  
  3.       hx dw 8DB9H  
  4. data ends  
  5.  
  6. code segment  
  7.       assume cs:code,ds:data  
  8.       start:  
  9.             mov ax,data  
  10.             mov ds,ax  
  11.             mov bx,hx  
  12.             ;lea si,asc 
  13.             mov cl,4  
  14.             mov ch,4  
  15.             again:  
  16.             rol bx,cl  ;left move 4 bit 
  17.             mov al,bl ;get bx in low 4 bit 
  18.             and al,0FH ;al in 1 bit ASCII  
  19.             call proc_1  
  20.             ;mov [si],al  
  21.             ;inc si  
  22.             ;just for show the al  
  23.  
  24.             mov ah,2  
  25.             mov dl,al  
  26.             int 21h  
  27.             dec ch  
  28.             jnz again  
  29.             jmp finish  
  30.  
  31. proc_1 proc  
  32.             add al,30H  
  33.             cmp al,39H  
  34.             jbe com  
  35.             add al,7 ;because  between have 7 sign  
  36.             com:  
  37.             ret  
  38. proc_1 endp  
  39.             finish:  
  40.             mov ah,4CH  
  41.             int 21h  
  42. code ends  
  43.       end start 
  我们生活中用到了很多进制,但是当我们用计算机来处理生活中的这些问题的时候,自然就用到各种各样的进制转换。


本文转自 secondriver 51CTO博客,原文链接:http://blog.51cto.com/aiilive/852475,如需转载请自行联系原作者
相关文章
|
10月前
|
Java
【软考学习1】数据表示——进制转换,R进制转10进制 和 10进制转R进制
【软考学习1】数据表示——进制转换,R进制转10进制 和 10进制转R进制
166 0
【软考学习1】数据表示——进制转换,R进制转10进制 和 10进制转R进制
|
4月前
字符与数字的相互转换
字符与数字的相互转换
35 0
|
9月前
|
前端开发
前端将数字0~10转化成汉字一~十
前端将数字0~10转化成汉字一~十
56 0
|
11月前
|
算法
二进制、八进制、十六进制与十进制的相互关系
二进制、八进制、十六进制与十进制的相互关系
【进制转换】— 包含整数和小数部分转换(二进制、八进制、十进制、十六进制)手写版,超详细
【进制转换】— 包含整数和小数部分转换(二进制、八进制、十进制、十六进制)手写版,超详细
进制转换(二进制,八进制,十进制,十六进制)涵盖整数与小数部分,内容的图片全为手写【详细图解】
进制转换(二进制,八进制,十进制,十六进制)涵盖整数与小数部分,内容的图片全为手写【详细图解】
|
算法
算法练习题(四)——十六进制和十进制的相互转换
算法练习题(四)——十六进制和十进制的相互转换
121 0
|
Python
Python编程:二进制,八进制,十六进制与十进制之间的转换
Python编程:二进制,八进制,十六进制与十进制之间的转换
Python编程:二进制,八进制,十六进制与十进制之间的转换
|
算法 C语言
C语言实现10进制转变成2进制,8进制,16进制,字符‘0’-‘9’
C语言实现10进制转变成2进制,8进制,16进制,字符‘0’-‘9’
184 0
C语言实现10进制转变成2进制,8进制,16进制,字符‘0’-‘9’
进制转换(二进制、八进制、十进制、十六进制)涵盖整数与小数部分,超级详细!
进制转换(二进制、八进制、十进制、十六进制)涵盖整数与小数部分,超级详细!
679 0
进制转换(二进制、八进制、十进制、十六进制)涵盖整数与小数部分,超级详细!