Year #2, Summer #3 đ» đ°
New stuff we learned this week: đ§
Assembly
- Assembly language is just one tiny step above machine code on the ladder of abstraction. It allows you to write sort-of-readable instructions directly to the CPU, thinks like âput this value into that registerâ, and âmake such-and-such system callâ. Hereâs a simple âHello worldâ in one flavor of assembly:
global _main
section .text
_main:
mov rax, 0x2000004 ; write syscall
mov rdi, 1 ; stdout
mov rsi, msg ; the string to write
mov rdx, 12 ; the length of the string
syscall
mov rax, 0x2000001 ; exit syscall
mov rdi, 0 ; the exit code
syscall
section .data
msg: db "Hello, HTC!", 10
C đȘ
- C is a super common language, the lingua franca of computer languages. It was created in the late 60âs, and is still incredibly widely used. Itâs blazing fast and has lots of sharp edges. Some people refer to it as âportable assemblyâ because itâs just a bit above assembly language on the ladder of abstraction. Hereâs a simple âHello worldâ program in C:
#include <stdio.h>
int main(void) {
printf("Hello HTC!\n");
return 0;
}
Homework Plan (2 or 3 weeksâŠ)
- Monkey Assignment #6
- 3 days review all flashcards in your app.
- 2 days touch typing practice
- 1 day personal project assignment
- watch Lecture 0 of CS50
- 6 days Execute Program homework
Monkey #6 (Parsing Let Statements) đ
- This task is optional, only if you want to keep going before our next class. đ
- Address all feedback from prior MRâs, and merge.
- Create a new branch.
- Read slowly and carefully through Chapter 2, sections 2.1 - 2.3.
- Then start reading Section 2.4 and try to follow, coding along to the best of your ability, using the videos linked below as needed.
- STOP before the end of Section 2.4, (page 53.6 of printed book, 41.7 of PDF), before he adds error messages to the parser.
- Video links: part 1, part 2, part 3
- Submit a MR, slack the MR url.
Personal Project Homework
- Refer to your work plan you created a few weeks ago, and select the next item on your list. If youâre ahead or behind of where you thought you would be, make any modifications you think appropriate, then Slack me your goal for this week. đ đ
- Make sure youâve addressed all of my feedback from last week, merge your MR, connect with vscode, pull from origin, and create a new branch.
- Implement the feature or chunk of work you planned.
- When you think youâre done, check things like:
- did you leave in any
console.log()
s? - does it look good at all screen sizes?
- do your storybook stories work and cover your components (if youâre using storybook)
- are your components and variables named well?
- is there anything you want to clean up, refactor, or DRY up before you submit?
- did you leave in any
- when youâre happy with the code, build your site, submit a MR, and Slack both the URLs.
- after I review, address any feedback I give you.