在求其他ASCLL码之前我们必须已知'A'和'a'的ASCLL值分别为65和97,大写字母与小写字母ASCLL之间的差值为32
即97-65=32
当我们已知'A'的ASCLL码之后我们就可以求任何A~Z,以及a~z的ASCLL值。
本位ASCLL+瞻后顾前法:即当前字符ASCLL码+后面待求字母所处位置-当前字母所处位置
例如我们已知'A'的ASCLL码为65,'Y'的ASCLL码怎么求呢?
A~Z是26位英文字母,Y在倒数第二位,即第25位,那么我们就利用已知'A'值求'Y'值
即65+(25-1)=89
为什么是25-1而不是25?
因为是从A开始算,A为字母第一位所以要减去1,所以Y在字母表中比A后(25-1)位,即24位。
例如我们已知'B'的ASCLL码为66,'Z'的ASCLL码怎么求呢?
Z在26位字母的倒数第一位,即第26位,从B开始算,B为字母第二位所以要减去2。
即66+(26-2)=90
/*当然也可以用化归转换思想:
我们就是已知'A'的ASCLL值为65,直接求‘Z’的ASCLL值。
即65+(26-1)=90,这就是本位ASCLL+瞻后顾前法。*/
例如我们已知'A'的ASCLL码为65,'f'的ASCLL码怎么求呢?
刚刚我们已知'A'的ASCLL值为65,如果我们忘记'a'的ASCLL值,我们可以先转换,大写字母与小写字母ASCLL之间的差值为32,所以'a'的ASCLL值为65+32=97,即97。
那么这个时候已知'a'的ASCLL值为97,f在第6位,a在第一位。
那么'f'的ASCLL不就是(65+32)+(6-1)=102。如果已知'a'的ASCLL值分别为97那就更好。
这个是根据'A'来求的,所以用65+32。
如果有更好的方法或者思维的话欢迎大家评论,如本篇文章有错误欢迎大家指出。