# Printing symbols

First of all, let's look how we can output symbols denoted by code points.

Your first option is to simply use hexadecimal code point number inside `\x{}`.

Let's look at some simple examples from the mathematic logic. To denote logical conjunction (more commonly known as AND operator), mathematicians use symbol , which has code point U+2227. So in Perl you should

```binmode STDOUT, ":encoding(UTF-8)";

say "1 \x{2227} 0 = 0";```

#### Exercise

Try to the write same example for logical disjunction (OR operator).

Hint: logical disjunction symbol comes right after the conjunction one in Unicode table.

```binmode STDOUT, ":encoding(UTF-8)";

say '';```

You can also use the name of a code point, which would make your script more readable. To do that you would use `\N{}` syntax instead of `\x{}` (if you are using version of Perl less than 5.16 you'll need to put `use charnames;` at the top of you script in order to use `\N{}`). The name of a code point could be seen directly in the Unicode standard or, for example, with App::Uni utility.

Remember exclusive disjunction operator? Yes, it's just good old XOR. As XOR is just an addition modulo 2, mathematicians write it as a plus sing in a circle — .

```use charnames qw(:full);

binmode STDOUT, ":encoding(UTF-8)";

say "1 \N{CIRCLED PLUS} 0 = 1";```

#### Exercise

Let's do some negation. Write an equation for negating bit 1.

Hint: use Unicode NOT SIGN.

```use charnames qw(:full);

binmode STDOUT, ":encoding(UTF-8)";

say '';```