271
236

More than 3 years have passed since last update.

なんで愛が生まれるのか

Last updated at Posted at 2016-05-09

この記事の概要

いろんな言語で愛が生まれまくってるけど誰も説明記事書いてなかったので
説明してみる

生とは

Unicode Utf-8 バイナリ
U+751F \xe7\x94\x9f 11100111 10010100 10011111

死とは

Unicode Utf-8 バイナリ
U+6B7B \xe6\xad\xbb 11100110 10101101 10111011

愛とは

Unicode Utf-8 バイナリ
u+611B \xe6\x84\x9b 11100110 10000100 10011011

結局みんな何してるの?

下記のようなコードを書くと愛になります。

Goの場合
package main

import "fmt"

func main() {
    fmt.Println(string('生' & '死'))
}

一体何してるのかわからない人に説明すると
ビット積という計算をしています。

簡単にいえば、対象となる値が両方 1 の場合は 1 、そうじゃない場合は0となります。
生と死の値が同じ所だけ赤文字にしてみました。

文字 バイナリ
1 1 1 0 0 1 1 1 1 0 0 1 0 1 0 0 1 0 0 1 1 1 1 1
1 1 1 0 0 1 1 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 1
1 1 1 0 0 1 1 0 1 0 0 0 0 1 0 0 1 0 0 1 1 0 1 1

わかってしまえば簡単なことですね

271
236
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
271
236