Go
golang
新人プログラマ応援

なんで愛が生まれるのか

More than 1 year has passed since last update.


この記事の概要

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

説明してみる


生とは

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

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