Assembly is like a scaffolding to a building — it provides essential structure to any computer program
Assembly is like a scaffolding to a building — it provides essential structure to any computer program
Photo by Samuel Zeller on Unsplash

You’re in a computer architecture class. The professor shows you a bunch of x86 assembly code, and you have absolutely no idea what is going on. Well, you’re in the right place!

This article is part of a planned series. Check back soon when the next part is posted!

Memory Layout

Memory is simply an array of bytes, each byte having its own address. When a program is executed, the operating system allocates a chunk of memory to the program. That memory (called address space) is divided into different segments as shown below:

Yeah, seriously. I closed my room door.

I went out to get breakfast, so I closed it, and locked it.

It’s also something I do when I want to go out to a party, go to school, or go to work. Simply put, I when I leave my room, I close my door (and probably lock it).

Meghan Markle does the same thing. Okay, not really.

Culture. Image courtesy of CS50.

This year I’m excited to bring CS50 — an incredible, wildly successful computer science curriculum to Singapore’s high school setting.

CS50 is Harvard University’s introduction to the intellectual enterprises of computer science and the art of programming for those less and more comfortable alike. It is by far the most popular course in Harvard, Yale and on online education platform edX. The course prides itself in having a broad range of accessibility, inviting literally anyone to chime in irrespective of his or her prior background, all while maintaining the course’s historical rigor.

This year, CS50 has been implementing its own…

Comprehensive Bash tutorial for the absolute Linux beginner.

Welcome to the Linux world! Whether you’re just starting on an intro to CS course or wandering through your very first UNIX-based home server, learning how to navigate around in Linux (more specifically, using the command line) is going to make your life much easier and much much more powerful.

Getting Started


There are many distributions of Linux out there. Each of them has their own variation of commands to work with. Specifically for this tutorial, I’m going to be using Ubuntu 14.04.2 LTS on Cloud9. …

กะจะเขียนมาตั้งนานละแต่ไม่มีโอกาสซะที วันนี้ขอมาแนะนำตัวเลยล่ะกัน ไม่ได้แนะนำตัวเองหรอก แต่มาแนะนำพี่เราคนหนึ่งที่เรียนอยู่เมกา (เดะเราไปมั่ง อีกไม่กี่ปีก็จบมัธยมละ อิอิ)


ด้วยความที่ผมเป็นนัก research ยอดเยี่ยม บวกกับความใฝ่ฝันที่จะไปเยี่ยมชม Silicon Valley ให้ได้ครั้งนึงในชีวิต (ชอบ tech ละสนใจ american culture กะอยากไปเรียนต่อแถวนั้นด้วย) เราก็เลยค้นคว้าหาข้อมูลมาละเอียดยิบ ตั้งแต่จะไปเรียนต่อต้องทำอะไรบ้าง ต้องสอบอะไรบ้าง บลาๆๆ และด้วยความที่เราเป็นเด็กนอก (ผมเรียนอยู่สิงคโปร์ พี่ผมก็ตามมาเรียนด้วย) ภาษาเราไม่ใช่ปัญหาละหากจะไปต่อที่นู่น ดังนั้นเราจึงมีหลายเส้นทางมากหลังจากจบมัธยม

ตอนนั้นเรายังไม่ค่อยซีเรียสเท่าไร เพราะกว่าจะจบจากนี่ก็ยังอีกยาวไกล แต่พอเวลาผ่านไปเราก็เริ่มลังเลใจ (ทำไมคล้องจองกันวะ) พ่อก็ถามว่าเราจะต่อสิงคโปร์จนจบเลยหรือไม่ 555

คำตอบคือไม่แน่ๆ เพราะอยู่มาหลายปี ไม่ชอบสภาพแวดล้อมสิงคโปร์มาก ถึงมีคนให้ทุนมาเรียนต่อเต็มราคาก็ไม่เอาอะ

ตอนมาสิงคโปร์ตอนแรกมีคนบอกว่าพอจบมัธยมละเอาใบเกรดไปต่อมหาลัยที่ไทยได้เลย แต่จุดเปลี่ยนมาถึงเมื่อเรามาค้นพบเอาเองทีหลังว่า.. …

I can’t say much about this because I’ve never taken the test before, but from what I dissected from my sister’s prep books, this is what works best for me.

My sister was going through a period of intensive test preps last year as part of her to-do list to enter a college in the United States. She had taken the SAT not long before, and her score was pretty abysmal. So she decided to give it another try (actually, three more tries) and give more care into the preparation part.

She bought several SAT books, which now sit disorderly…

Prakrit Duangsutha

Full-time geek, part-time nerd.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store