วันศุกร์ที่ 18 เมษายน พ.ศ. 2557

What Is Software Engineering

Software Engineering = = Computer Science

-นักวิทยาศาสตร์สร้างสิ่งต่างเพื่อเรียนรู้อะไรใหม่ๆ
-วิศวกรเรียนรู้สิ่งเหล่านั้นเพื่อออกแบบและสร้างผลผลิต

-นักวิทยาศาตร์ต้องการบรรลุความก้าวหน้าทางวิทยาศาสตร์
-วิศวกรต้องการหลีกเลี่ยงความล้มเหลวทางวิศวกรรม

- นักวิทยาศาสตร์คอมพิวเตอร์ต้องการเข้าใจขั้นตอนวิธีการ และรากฐานของการคำนวณทางทฤษฏี
- วิศวกรซอฟแวร์ ต้องการที่จะเรียนรู้หลักการออกแบบและการปฏิบัติที่ดีที่สุดสำหรับการสร้างระบบซอฟแวร์ที่มีคุณภาพ

-นักวิทยาศาสตร์คอมพิวเตอร์ต้องการที่จะรู้ว่าพื้นฐานการทำงานของเทคโนโลยีและการที่จะปรับปรุงให้ดีขึ้น
- วิศวกรซอฟต์แวร์ต้องการทราบลักษณะของเทคโนโลยีเพื่อให้พวกเขาสามารถออกแบบเทคโนโลยีที่เหมาะสมที่สุดในระบบซอฟต์แวร์ของพวกเขา

วันเสาร์ที่ 22 มีนาคม พ.ศ. 2557

ปัญหาที่เป็นอุปสรรคของ Pipeline

ปญหาที่เกิดจาก pipeline คือ
1.Structural Hazards : เกิดจากการขัดแยงเมื่อ hardware ไมสามารถรองรับการรวมชุดคํ าสั่งพรอม
กันในเวลาเดียวกัน เกิดการทับซอนกันเมื่อมีการ execute
2. Data Hazards : เกิดจากการทีชุดคํ าสั่งทับซอนกัน ไมสามารถที่จะ execute
3.Control Hazard : pipe line ที่แยกชุดคํ าสั่งไมสามารถควบคุมสัญญาณได
ปญหา pipe line แกไดโดย ใชตัวถวงเวลา
-! A cache miss : ชุดคํ าสั่งทั้งหมดของ pipe line ทั่งกอนและหลังขาดหายไป
-! A hazard in pipe line : ชุดคํ าสั่งของ pipe line จะยอมรับการ process โดยที่ตัวอื่นๆชาลง เมื่อมี
การถวงเวลาจะทํ าใหชุดคํ าสั่งชาลงดวย

อ้างอิง: http://www.vwin.co.th/knowledge/pipeline2.pdf

CPU ของ Dell XPS 14

Intel® Core™ i7-740QM Processor
(6M cache, 1.73 GHz)


Essentials
สถานะEOIS
วันที่วางจำหน่ายQ3'10
หมายเลขโปรเซสเซอร์i7-740QM
# คอร์4
# เธรด8
ความเร็วสัญญาณนาฬิกา1.73 GHz
ความถี่เทอร์โบสูงสุด2.93 GHz
Intel® Smart Cache6 MB
DMI2.5 GT/s
ชุดคำสั่ง64-bit
ส่วนขยายชุดคำสั่งSSE4.2
ตัวเลือกเอ็มเบ็ดเด็ดที่มีNo
การทำลวดลายวงจร45 nm
TDP สูงสุด45 W

Memory Specifications
ขนาดหน่วยความจำสูงสุด (ขึ้นอยู่กับประเภทของหน่วยความจำ)8 GB
ประเภทของหน่วยความจำDDR3-1066/1333
# ของแชนเนลหน่วยความจำ2
แบนด์วิดธ์หน่วยความจำสูงสุด21 GB/s
การขยายที่อยู่ทางกายภาพ36-bit

Expansion Options
การปรับปรุงแก้ไข PCI Express2
การกำหนดค่า PCI Express 1x16, 2x8
# สูงสุดของเลน PCI Express16

Package Specifications

การปรับตั้งค่า CPU สูงสุด1
TJUNCTION100°C
ขนาดแพ็คเกจ37.5mm x 37.5mm
ขนาดของไดย์ประมวลผล296 mm2
# ไดย์ทรานซิสเตอร์ประมวลผล774 million
รองรับซ็อกเก็ตPGA988
มีตัวเลือกชนิดฮาโลเจนต่ำให้เลือกใช้ดู MDDS

Advanced Technologies
เทคโนโลยี Intel® Turbo Boost Yes
เทคโนโลยี Intel® วีโปร Yes
Intel® Hyper-Threading Technology Yes
เทคโนโลยีเวอร์ชวลไลเซชัน Intel® (VT-x) Yes
เทคโนโลยีเวอร์ชวลไลเซชัน Intel® สำหรับ Directed I/O (VT-d) Yes
Intel® VT-x ที่มี Extended Page Tables (EPT) Yes
Intel® 64 Yes
สถานะไม่ได้ใช้งานYes
Enhanced Intel SpeedStep® TechnologyYes
เทคโนโลยีการติดตามความเปลี่ยนแปลงของอุณหภูมิYes

Intel® Platform Protection Technology
Trusted Execution Technology Yes
Execute Disable Bit Yes


วันศุกร์ที่ 14 กุมภาพันธ์ พ.ศ. 2557

5 คำถามที่อยากรู้คำตอบ หรือมักจะถูกถามจากเพื่อน เมื่อจะซื้อคอมพิวเตอร์หรือ smart device ใหม่

1. CPU intel core i5 gen4 กับ intel core i7 gen1 แบบไหนแรงกว่ากัน?

2. Harddisk แบบ hdd ความจุเยอะๆ กับ ssd ความจุน้อยๆ แบบไหนน่าซื้อกว่ากัน?

3.ถ้าจะใช้งานได้ด้าน graphic ควรเลือกซื้อ การ์ดจอสูงๆ กับ หน้าจอความละเอียดเยอะๆดีหรือไม่?

4. Notebook ยี่ห้ออะไรทนที่สุด?

5. Macbook คุณภาพสินค้ากับราคาเหมาะสมกันหรือไม่??

วันเสาร์ที่ 25 มกราคม พ.ศ. 2557

สรุปเนื้อหาสัปดาห์ที่3

Floating Point

Quiz สัปดาห์ที่2

จงจัดเก็บ – 0.0123 ตามรูปแบบ Binary16 ของมาตรฐาน IEE 754:2008 บนคอมพิวเตอร์ 32 bit ชนิด Little-Endian โดยใช้จำานวน bits ของ Significant ก่อนการปัดเศษ 13 bits

เฉลย: ค่าตั้งต้น ฐาน 2
 0.0123 0.
 0.0246 0.0
 0.0492 0.00
0.0984 0.000
0.1968 0.0000
0.3936 0.0000 0
0.7872 0.0000 00
1.5744 0.0000 001
1.1488 0.0000 0011
0.2976 0.0000 0011 0
0.5952 0.0000 0011 00
1.1904 0.0000 0011 001
0.3808 0.0000 0011 0010
0.7616 0.0000 0011 0010 0
1.5232 0.0000 0011 0010 01
1.0464 0.0000 0011 0010 011
0.0928 0.0000 0011 0010 0110
0.1956 0.0000 0011 0010 0110 0
0.3912 0.0000 0011 0010 0110 00
0.7824 0.0000 0011 0010 0110 000
1.5648 0.0000 0011 0010 0110 0001

0.0123 ~ 1.1001 0011 0000 1 x 2^–7
Sign = 1 (negative value) = 1h
Exponent =  –7  + 15 = 8 => 0 1000 = 08h
Significant = 1001 0011 0000 1
คิดเสมือนว่าเป็น 1001 0011 00.00 1
ดังนั้นเมื่อเขียนบนเส้นจำานวนจะได้ว่า


Significant (Round toward 0) = 1001 0011 00 = 930h
Significant (Round toward +infinity) = 1001 0011 00 = 930h
Significant (Round toward –infinity) = 1001 0011 01 = 934h
Significant (Round to nearest, tie away from 0) = 1001 0011 00 = 930h
Significant (Round to nearest, tie to even) = 1001 0011 00 = 930h

Sign, Biased Exponent, Significant (Round toward –infinity)
Base Sign Biased Exponent Significant 
10      1               8            
2        1               0 1000     1001 0011 01(00)
16      1               08            9 3 4


-0.0123 = 1, 0 1000, 1001 0011 00
= 1010   0010   0100   1100 (16-bit)
= A2 4C (16-bit)
= 00 00 A2 4C (32-bit)
= 4C A2 00 00 (Little-endian 32-bit)

เฉลยโดย.ดร.สุรเดช จิตรประไพกุลศาล

สรุปเนื้อหาสัปดาห์ที่ 1

การแปลงเลขฐาน
ระบบเลขฐาน 2 (Binary Number System) เป็นเลขฐานที่ประกอบด้วยเลข 2 ตัว ได้แก่เลข 0 กับ เลข 1 ซึ่งเป็นเลขฐานที่คอมพิวเตอร์สามารถเข้าใจได้ง่าย เพราะว่าอุปกรณ์ทางไฟฟ้าก็มีสถานะเพียง 2 สถานะ คือ เปิด กับ ปิด ซึ่งก็เทียบได้กับ 0 กับ 1 แต่ถ้าใช้เลขฐาน 10 ในคอมพิวเตอร์อาจจะเกิดปัญหาอย่างอื่นตามมา หรือแม้แต่อุปกรณ์ทางไฟฟ้า ก็ต้องแบ่งสถานะออกเป็น 10 สถานะ ซึ่งไม่เป็นที่นิยมนัก การเก็บข้อมูลในระบบของคอมพิวเตอร์ก็จะจัดเก็บเป็นกลุ่มตัวเลขฐานสองหลายบิต ขึ้นอยู่กับขนาดของสิ่งที่ต้องการเก็บ และหน่วยความจำที่ใช้
ระบบเลขฐาน 8 (Octal Number System) เป็นเลขฐานที่ประกอบด้วยเลข 8 ตัว ซึ่งประกอบด้วยเลข 0, 1, 2, 3, 4, 5, 6, 7 ซึ่งเป็นเลขฐานที่เพิ่มเนื้อที่หน่วยความจำในการเก็บให้มากขึ้น การเก็บข้อมูลเป็นเลขฐาน 8 จะทำให้เก็บข้อมูลได้มากขึ้น
ระบบเลขฐาน 10 (Decimal Number System) เป็นเลขฐานที่ประกอบด้วยตัวเลข 10 ตัว ซึ่งประกอบด้วยเลข 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ซึ่งระบบเลขฐาน 10 เป็นระบบเลขฐานที่คนทั่วไปสามารถเข้าใจได้เป็นอย่างดี เพราะเป็นตัวเลขที่เกี่ยวข้องกับชีวิตประจำวันซึ่งใช้มาตลอด สามารถจำได้และคำนวณได้ง่ายกว่าเลขฐานอื่น ๆ
ระบบเลขฐาน 16 (Hexadecimal Number System) เป็นเลขฐานที่ประกอบด้วยตัวเลข 10 ตัวและตัวอักษรแทนตัวเลขอีก 6 ตัว ซึ่งประกอบด้วยเลข 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 และตัวอักษรภาษาอังกฤษแทน 10 ถึง 15 ได้แก่ A, B, C, D, E, F ซึ่งก็จะเก็บข้อมูลได้มากกว่าระบบเลขฐาน 2 ฐาน 8

Big Endian &Little Endian


Big Endian & Little Endian ก็คือ การจัดเรียงค่าของไบต์ของหน่วยความจำในการเก็บค่าตัวเลขจำนวนมากกว่า 1 ไบต์ในหน่วยความจำซึ่งมีอยู่ 2 แบบได้แก่แบบ Big Endian และแบบ Little Endian โดยซีพียูที่ใช้แบบ Big Endian จะได้แก่ 68k หรือ 68000 ของโมโตโรล่า, SPARC ของ Sun, MIPS ของ Silicon Graphics และ PA-RISC ของ HPส่วนสถาปัตยกรรมที่ใช้แบบ Little Endian จะได้แก่ 80×86 ของอินเทล และ Alpha ของ Compaq
โดยที่ Big Endian นั้นจะใช้แอดเดรสไบต์ต่ำสุดเก็บค่าของข้อมูลไบต์สูงสุดของเวิร์ด ในขณะที่สถาปัตยกรรมแบบ Little Endian จะเก็บไบต์ต่ำสุดของเวิร์ดด้วยแอดเดรสไบต์ต่ำสุดและเก็บค่าไบต์สูงสุดของเวิร์ดไว้ในแอดเดรสไบต์สูงสุด

การปัดค่า