Monday, November 30, 2009

Assembly Language

Assembly is one of programming languages. It's the closest form of machine's language. When we learn about C programming language, or Pascal, we still use the language that uses human language, especially English. The instructions are, if-then-else, while-do, for-to-do, etc. In Assembly, we don't use it anymore(maybe a little, but the syntax is completely different). We can see clearly how the machine works in this language, like moving memory, decreasing or increasing accumulator, using registers, I/O ports, etc.

I use Pinnacle to compile and simulate the program.
The Pinnacle software can be downloaded in :
here
The 8051 Assembly Language Manual can be downloaded in :
here

Common instructions in Assembly :
DJNZ(Decrease and Jump if Not Zero)
CJNE(Compare and Jump if Not Equal)
SJMP(Short Jump)
MOV
RL,RR(Shift Left, Shift Right)

This is an example :
ORG 0H

START:
MOV A,#0FEH
MOV R3,#008H
CALL LAGI
MOV R3,#004H
CALL SAPI
MOV R3,#004H
CALL KUDA
CALL WOW
SJMP START

LAGI:
MOV P1,A
CALL DELAY
RL A
DJNZ R3,LAGI
RET

SAPI:
CALL DELAY
MOV P1,#0FFH
CALL DELAY
MOV P1,#000H
DJNZ R3,SAPI
RET

KUDA:
CALL DELAY
MOV A,#11110000B
MOV P1,A
CALL DELAY
MOV A,#00001111B
MOV P1,A
DJNZ R3,KUDA
RET

WOW:
CALL DELAY
MOV P1,#01111110B
CALL DELAY
MOV P1,#10111101B
CALL DELAY
MOV P1,#11011011B
CALL DELAY
MOV P1,#11100111B
CALL DELAY
MOV P1,#11011011B
CALL DELAY
MOV P1,#10111101B
CALL DELAY
MOV P1,#01111110B
RET

DELAY:
MOV R0,#05H
ULANG:
MOV R1,#0FEH
ULANG1:
MOV R2,#000H
DJNZ R2,$
DJNZ R1,ULANG1
DJNZ R0,ULANG
RET
end


Just copy this program and save into *.asm and compile in Pinnacle. Simulate this using "play" button and view the ports from menu bar.

This program can be downloaded into a MCS-51 chip, using a downloader circuit. This is the result of the program above.



This is the schematic of the circuit :



If you have any questions, feel free to ask.

Thursday, November 26, 2009

Left 4 Dead 2

Ok guys, just got L4D2 today, let's see how much better this game from the previous one : ).

Saturday, November 21, 2009

Microsoft Office 2010 Beta Review

A review of office 2010 beta, check it out before you buy the final version in early 2010.

http://www.tomsguide.com/us/office-2010-beta,review-1458.html