Conversión entre minúsculas y mayúsculas a nivel de bits
- October 30, 2012
- tuxotron
Nunca me había percatado de esta curiosidad en la codificación de los caracteres en ASCII. Cómo ya todos sabemos, cada carácter en ASCII tiene su propio código, incluido las letras mayúsculas y minúsculas. Por ejemplo, la letra A = 65 y la a = 97, en decimal.
Si cogemos todos los caracteres en mayúsculas (A-Z) y todos los minúsculas (a-z) e imprimimos su código en binario, observamos que todos los bits son iguales, excepto el sexto bit (contando desde la derecha):
('a'..'z').each {|c| puts "#{c} = #{c.ord.to_s(2)}"} # ruby
a = 1100001 b = 1100010 c = 1100011 d = 1100100 e = 1100101 f = 1100110 g = 1100111 h = 1101000 i = 1101001 j = 1101010 k = 1101011 l = 1101100 m = 1101101 n = 1101110 o = 1101111 p = 1110000 q = 1110001 r = 1110010 s = 1110011 t = 1110100 u = 1110101 v = 1110110 w = 1110111 x = 1111000 y = 1111001 z = 1111010
('A'..'Z').each {|c| puts "#{c} = #{c.ord.to_s(2)}"} # ruby
A = 1000001 B = 1000010 C = 1000011 D = 1000100 E = 1000101 F = 1000110 G = 1000111 H = 1001000 I = 1001001 J = 1001010 K = 1001011 L = 1001100 M = 1001101 N = 1001110 O = 1001111 P = 1010000 Q = 1010001 R = 1010010 S = 1010011 T = 1010100 U = 1010101 V = 1010110 W = 1010111 X = 1011000 Y = 1011001 Z = 1011010
Las minúsculas tienen el sexto bit a 1 y las mayúsculas a 0. Por lo tanto cambiando dicho de bit de 1 a 0 ó 1 a 0, podemos convertir entre mayúsculas o minúsculas. Haciendo un XOR de un carácter con el carácter espacio cuyo código es el 32 en decimal, por lo tanto 100000 en binario podemos hacer la conversión, ya que esta operación invertirá el bit 6. Un ejemplo en ruby:
1.9.3p286 :091 > ('A'.ord ^ ' '.ord).chr
=> "a"
1.9.3p286 :092 > ('b'.ord ^ ' '.ord).chr
=> "B"
La guía definitiva de Windows 8
- October 30, 2012
- cybercaronte
- 1.Meet Microsoft Windows 8
- 2.System Requirements, Upgrade Paths, SKUs, And Pricing
- 3.Test Systems And Software
- 4.Installing And Setting Up Windows 8
- 5.Windows 8 UI Basics
- 6.Windows 8 Start Screen
- 7.Charms Bar
- 8.Switcher
- 9.App And Navigation Bars
- 10.Gestures, Text Selection, And Copy/Paste
- 11.Two Keyboards: One Virtual, One Physical
- 12.Apps: Essentials And Ecosystem
- 13.Apps: Productivity
- 14.Apps: News And Search
- 15.Windows 8 PC Settings
- 16.The Windows 8 Desktop And Task Manager
- 17.Desktop Control Panel
- 18.World's Collide: Windows 8 UI + Desktop
- 19.Tom's Tips To Mitigate Windows 8 UI
- 20.Windows 8: Mistake Or Misunderstood?
En Tom’s Hardware (una de nuestras páginas web de referencia) han creado este completo artículo sobre Windows 8. Entre otros temas, podrás saber más sobre Windows 8 UI (Metro), Apps, Desktop (escritorio), IE10, SkyDrive, y la nueva Windows Store.
Eso sí, está en inglés pero es el más completo que hemos visto por la red, sólo hay que echarle un vistazo al índice:
Otros análisis de Windows 8:
GenBeta (español)
PCWorld (inglés)
Domingo por la mañana, Sky Trees, Solar Fields
- October 28, 2012
- cybercaronte
Solar Fields, Magnus Birgersson creador entre otros buenos discos, de la banda sonora de Mirror’s Edge.
Buscar
Entradas Recientes
- Posts
- Reemplazando la bateria del AirTag
- OpenExpo Europe décima edición, 18 de mayo: El Epicentro de la Innovación y la Transformación Digital
- Docker Init
- Kubernetes para profesionales
- Agenda: OpenExpo Europe 2022 llega el 30 de junio en formato presencial
- Libro 'Manual de la Resilencia', de Alejandro Corletti, toda una referencia para la gestión de la seguridad en nuestros sistemas
- Mujeres hackers en ElevenPaths Radio
- Creando certificados X.509 caducados
- Generador de imágenes Docker para infosec



