<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Cholwich's blog &#187; computer architecture</title>
	<atom:link href="http://cholwich.org/wordpress/tag/computer-architecture/feed/" rel="self" type="application/rss+xml" />
	<link>http://cholwich.org/wordpress</link>
	<description>Just another blog of mine</description>
	<lastBuildDate>Thu, 02 Jun 2011 02:00:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>ITS325 Computer Architecture</title>
		<link>http://cholwich.org/wordpress/2008/04/21/its325-computer-architecture/</link>
		<comments>http://cholwich.org/wordpress/2008/04/21/its325-computer-architecture/#comments</comments>
		<pubDate>Mon, 21 Apr 2008 15:22:26 +0000</pubDate>
		<dc:creator>cholwich</dc:creator>
				<category><![CDATA[teaching]]></category>
		<category><![CDATA[computer architecture]]></category>

		<guid isPermaLink="false">http://cholwich.org/wordpress/?p=56</guid>
		<description><![CDATA[เนื่องจากเทอมหน้าจะเปลี่ยนไปสอนวิชา Computer Architecture วิชาเทอมต้นนี่เปลี่ยนมาหลายวิชาแล้ว ทำงานมาสามปี ไม่เคยสอนซ้ำกันซักปี ปีแรกสอนภาษาซีครึ่งหนึ่ง อีกครึ่งสอนวิชา Foundation of Information Systems วิชาที่หายไปจากหลักสูตรแล้ว ปีที่สองก็ไปสอน DBMS ครึ่งหนึ่ง กับ Intelligent Systems อีกครึ่งหนึ่ง วิชาหลังนี่แปลงกายมาเป็น Artificial Intelligence ในหลักสูตรใหม่ แถมย้ายไปอยู่เทอมหลัง ปีที่แล้วกลับไปสอนภาษาซีอีกครั้งหนึ่งแต่คราวนี้สอนเต็มตัวเลย ปีหน้าด้วยเหตุการณ์หลายๆ อย่าง เลยทำให้ได้ไปสอน Computer Architecture แทน ก็เลยต้องเตรียมตัวกันพอสมควร Computer Architecture มีเป้าหมายให้นักศึกษาเข้าใจหลักการทำงานพื้นฐานภายในระบบคอมพิวเตอร์ ผมยังเชื่อว่าวิชานี้เป็นความรู้พื้นฐานที่สำคัญสำหรับนักศึกษาที่เรียนทางด้านนี้ แม้ว่าปัจจุบันระบบซอฟท์แวร์จะทำสิ่งต่างๆ ซ้อนไว้หลายชั้น จนเราแทบจะไม่จำเป็นต้องสนใจหรือเข้าใจว่าระบบทำงานยังไง เราก็สามารถสร้างซอฟท์แวร์หรือแอพพลิเคชันได้ แต่สุดท้ายถ้าอยากทำซอฟท์แวร์ที่ใช้ประสิทธิภาพสูงสุดของระบบจริงๆ ก็จำเป็นที่จะต้องเข้าใจสิ่งต่างๆ เหล่านี้ ปัญหาของการเรียนวิชานี้ก็คือ ส่วนใหญ่จะเน้นไปที่ทฤษฎี หรือวิธีการต่างๆ จนบางครั้ง นักศึกษาคิดว่าเป็นวิชาท่องจำ หรือบางครั้งก็เน้นไปที่การออกแบบฮาร์ดแวร์ ซึ่งอาจจะไม่เหมาะกับนักศึกษาที่เพิ่งเริ่มเรียนปีที่สองในมหาวิทยาลัย และยังเป็นเทอมแรกที่เรียนวิชาเฉพาะสาขาด้วย นอกจากนี้นักศึกษาที่จะสอนก็เป็นนักศึกษาสาขาวิทยาการคอมพิวเตอร์ กับเทคโนโลยีสารสนเทศ ที่จะเรียน [...]]]></description>
			<content:encoded><![CDATA[<p>เนื่องจากเทอมหน้าจะเปลี่ยนไปสอนวิชา Computer Architecture วิชาเทอมต้นนี่เปลี่ยนมาหลายวิชาแล้ว ทำงานมาสามปี ไม่เคยสอนซ้ำกันซักปี ปีแรกสอนภาษาซีครึ่งหนึ่ง อีกครึ่งสอนวิชา Foundation of Information Systems วิชาที่หายไปจากหลักสูตรแล้ว ปีที่สองก็ไปสอน DBMS ครึ่งหนึ่ง กับ Intelligent Systems อีกครึ่งหนึ่ง วิชาหลังนี่แปลงกายมาเป็น Artificial Intelligence ในหลักสูตรใหม่ แถมย้ายไปอยู่เทอมหลัง ปีที่แล้วกลับไปสอนภาษาซีอีกครั้งหนึ่งแต่คราวนี้สอนเต็มตัวเลย ปีหน้าด้วยเหตุการณ์หลายๆ อย่าง เลยทำให้ได้ไปสอน Computer Architecture แทน ก็เลยต้องเตรียมตัวกันพอสมควร </p>
<p>Computer Architecture มีเป้าหมายให้นักศึกษาเข้าใจหลักการทำงานพื้นฐานภายในระบบคอมพิวเตอร์ ผมยังเชื่อว่าวิชานี้เป็นความรู้พื้นฐานที่สำคัญสำหรับนักศึกษาที่เรียนทางด้านนี้ แม้ว่าปัจจุบันระบบซอฟท์แวร์จะทำสิ่งต่างๆ ซ้อนไว้หลายชั้น จนเราแทบจะไม่จำเป็นต้องสนใจหรือเข้าใจว่าระบบทำงานยังไง เราก็สามารถสร้างซอฟท์แวร์หรือแอพพลิเคชันได้ แต่สุดท้ายถ้าอยากทำซอฟท์แวร์ที่ใช้ประสิทธิภาพสูงสุดของระบบจริงๆ ก็จำเป็นที่จะต้องเข้าใจสิ่งต่างๆ เหล่านี้ </p>
<p>ปัญหาของการเรียนวิชานี้ก็คือ ส่วนใหญ่จะเน้นไปที่ทฤษฎี หรือวิธีการต่างๆ จนบางครั้ง นักศึกษาคิดว่าเป็นวิชาท่องจำ หรือบางครั้งก็เน้นไปที่การออกแบบฮาร์ดแวร์ ซึ่งอาจจะไม่เหมาะกับนักศึกษาที่เพิ่งเริ่มเรียนปีที่สองในมหาวิทยาลัย และยังเป็นเทอมแรกที่เรียนวิชาเฉพาะสาขาด้วย นอกจากนี้นักศึกษาที่จะสอนก็เป็นนักศึกษาสาขาวิทยาการคอมพิวเตอร์ กับเทคโนโลยีสารสนเทศ ที่จะเรียน Digital Circuits ในเทอมเดียวกัน แถมเป้าหมายของหลักสูตรก็อยากจะให้นักศึกษาเหล่านี้จบไปทำงานในสาขาทางด้านซอฟท์แวร์ หรือไปทางในเชิงทฤษฎี  </p>
<p>สุดท้ายก็ไปเจอหนังสือ <a href="http://www.csapp.cs.cmu.edu">Computer Systems: A Programmer&#8217;s Perspective</a> ที่พัฒนาโดยอาจารย์จาก CMU ที่เจอปัญหาคล้ายๆ กัน เลยเปลี่ยนวิธีการสอนใหม่ เป็นการเรียนรู้สถาปัตยกรรม หรือการทำงานของคอมพิวเตอร์ ผ่านทางการเขียนโปรแกรม และการทดลองด้วยภาษาซี เพื่อทำให้ผู้เรียนกลายเป็นโปรแกรมเมอร์ที่เข้าใจการทำงานของระบบคอมพิวเตอร์ และสามารถเขียนโปรแกรมที่ดึงความสามารถของระบบออกมาได้เต็มที่ จริงๆ แล้ว Matt ก็เคยใช้หนังสือเล่มนี้สอนเมื่อสามปีก่อนเหมือนกัน ได้เวลาเริ่มทำสไลด์ประกอบการสอนแล้ว คงจะได้สนุกกับวิชานี้อีกเทอมหนึ่งล่ะ ถ้ามีเวลาอยากสอนเขียนโปรแกรมที่ใช้พวก SSE หรือ MMX เพิ่มด้วยนะ แต่หวังว่าคงจะไม่ใช่คนสอนสนุกอยู่คนเดียวนะ <img src='http://cholwich.org/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://cholwich.org/wordpress/2008/04/21/its325-computer-architecture/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

