CS208 Introduction to Computer Systems Friday, 10 April 2026 ==== HEY JEFF: Sometime, you gotta explain that Makefile from the first assignment ==== + Quiz + Questions + UTF-8 - Unicode "codepoint" - the integer that represents one character U+0041 <-> A U+00E9 <-> é U+2191 <-> ↑ U+1F60A <-> 😊 - U+03B1 --> byte sequence (the "encoding" of the character) - E2 86 90 --> Unicode code point (which represents the character) - You try it U+266D --> ? F0 9F 98 80 --> ? - Why is UTF-8 like this? (Points in favor) - The only time you see a null byte is in the null character - No byte order problem - You can re-synchronize midstream if the byte stream gets corrupted for a while - Balance between 1-byte ASCII representation and variable-byte-count for higher codepoints (saves memory/disk space for lots of text) - Who did this? Ken Thompson - Original author of Unix - Turing Award (with Dennis Ritchie) 1983 - Turing Award Lecture 1983 -- explained a really nasty kind of virus - Plan 9 OS - Go language - UTF-8 + BOM - Byte order mark - U+FEFF at start of file + Sunday's assignment - ASCII toupper, tolower - printing chars, and why it's so weird