[Question] Re: Ngôn ngữ lập trình Assembly. |
04/04/2007 19:45:39 (+0700) | #31 | 51567 |
Napolion
Member
|
0 |
|
|
Joined: 04/04/2007 08:38:03
Messages: 1
Offline
|
|
This post is set hidden by a moderator because it may be violating forum's guideline or it needs modification before setting visible to members. |
|
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
04/04/2007 22:15:27 (+0700) | #32 | 51587 |
npkvk2005
Member
|
0 |
|
|
Joined: 12/11/2005 14:49:55
Messages: 128
Offline
|
|
Cuốn mình có mấy bạn kia đưa lên rapid rồi đó. Tài liệu ASM = tiếng việt khó kiếm lắm, quanh đi quẩn lại thấy mỗi có 1 cuốn |
|
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
19/12/2008 12:39:27 (+0700) | #33 | 163126 |
|
VTC_A1
Member
|
0 |
|
|
Joined: 18/08/2008 13:27:57
Messages: 41
Offline
|
|
mình là thành viên mới.mình muốn tìm hiểu và học về asembly nhưng chưa biết nên bắt đầu từ đâu?Mong các bạn giúp đỡ. |
|
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
19/12/2008 12:44:51 (+0700) | #34 | 163127 |
StarGhost
Elite Member
|
0 |
|
|
Joined: 29/03/2005 20:34:22
Messages: 662
Location: The Queen
Offline
|
|
có cuốn "The art of assembly language programming" vừa free hoàn toàn, vừa chuẩn, vừa dễ hiểu mà lại không dùng. |
|
Mind your thought. |
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
20/12/2008 00:30:34 (+0700) | #35 | 163199 |
FaL
Moderator
|
Joined: 14/04/2006 09:31:18
Messages: 1232
Offline
|
|
VTC_A1 wrote:
mình là thành viên mới.mình muốn tìm hiểu và học về asembly nhưng chưa biết nên bắt đầu từ đâu?Mong các bạn giúp đỡ.
Assembly cũng có nhiều loại. Bồ muốn học chip nào thì kiếm assembly của chip đó mà học. Bắt đầu từ việc kiếm tài liệu |
|
Hãy giữ một trái tim nóng và một cái đầu lạnh |
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
22/12/2008 06:19:20 (+0700) | #36 | 163491 |
|
VTC_A1
Member
|
0 |
|
|
Joined: 18/08/2008 13:27:57
Messages: 41
Offline
|
|
mình vẫn biết trước khi học assembly thì có kiến thức về cấu trúc máy tính.Mình cũng có nhiều tài liệu về phần này nhưng nó khó quá.Đọc mãi vẫn ko hiểu,ko thể hình dung ra nó như thế nào.ai có kinh nghiệm học phần này ko?Giúp mình với!! |
|
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
22/12/2008 15:52:23 (+0700) | #37 | 163538 |
FaL
Moderator
|
Joined: 14/04/2006 09:31:18
Messages: 1232
Offline
|
|
VTC_A1 wrote:
mình vẫn biết trước khi học assembly thì có kiến thức về cấu trúc máy tính.Mình cũng có nhiều tài liệu về phần này nhưng nó khó quá.Đọc mãi vẫn ko hiểu,ko thể hình dung ra nó như thế nào.ai có kinh nghiệm học phần này ko?Giúp mình với!!
Cũng không quan trọng kiến trúc máy tính lắm đâu bạn.
Với assembly của chip nào đó bạn chỉ cần đọc tài liệu để hiểu các block của chip làm việc thế nào, sau đó đọc cấu trúc ngôn ngữ, viết những chương trình đơn giản. Sau một vài chương trình bạn sẽ hiểu thêm cấu trúc chip và assembly. |
|
Hãy giữ một trái tim nóng và một cái đầu lạnh |
|
|
|
[Question] Re: Ngôn ngữ lập trình Assembly. |
23/12/2008 05:25:16 (+0700) | #38 | 163583 |
duysau2
Member
|
0 |
|
|
Joined: 24/11/2008 12:53:45
Messages: 3
Offline
|
|
Mình đang buồn, mình đề ba giúp các bạn tiếp cận hộp ngữ.
Đầu tiền bạn cài đặt Editplus (1 trong những công cụ sọan thảo Assembler, nó cũng giúp bạn biên dịch, thực thi, chấn lỗi và chạy chương trình Assembler)
Mình bắt đầu bằng cách viết chương trình xuất ra chuỗi "Hello !" cho các bộ xử lý Intel thuộc họ x86.
Cấu trúc thông thường của 1 chương trình hộp ngữ:
.model <khai báo kiểu chương trình>
.stack <khai báo kích thước ngăn xếp>
.data
< Khai báo dữ liệu>
.code
<Các lệnh>
end
Khai báo biến trong hợp ngữ:
<tên biến> D<KiểuDL> <giá trị khởi tạo>
Các kiểu dữ liệu: B (1 byte), W (2 bytes), D (4 bytes)
Ví dụ:
Code:
s DB "Hello !$" ; khai báo trong C char s[] = "\nHello !"
Muốn xuất 1 chuỗi trong C gọi hàm cout<<s.
Muốn xuất 1 chuỗi trong Assembler "gọi hàm 9" (AH = 9h, DS: địa chỉ segment của chuỗi ,DX: địa chỉ offset của chuỗi), ngắt 21h để in.
Mọi chương trình đều phải có đoạn code thoát khỏi chương trình, nếu không chương
trình sẽ không dừng khi hết chương trình của mình.
Muốn thóat khỏi chương trình "gọi hàm 4Ch" (AH = 4Ch), ngắt 21h để thóat.
Các bạn tự tìm hiểu thêm các dịch vụ ngắt thông dụng.
Code:
.model small
.stack 100h
.data
s DB "Hello !" ; khai báo xâu ký tự cần in
.code
;đầu vào----------------------------------------------------------
mov AX, @data ; lấy địa chỉ data segment ghi vào DS
mov DS, AX ; Vì model small, đây cũng là địa chỉ segment của xâu s
mov DX, OFFSET s ; lấy địa chỉ offset ghi vào DX
mov AH, 9
;end đầu vào------------------------------------------------------
int 21h ; gọi hàm 9, ngắt 21h để in
mov AH, 4Ch ; thóat khỏi chương trình
int 21h
end
Các bạn tự tìm hiểu cách dịch, liên kêt, chạy và chấn lỗi chương trình từ EditPlus
hoặc khi rãnh mình sẽ post lên hướng dẫn.
|
|
|
|
|
[Question] Ngôn ngữ lập trình Assembly. |
30/09/2011 10:11:58 (+0700) | #39 | 247951 |
an7777777
Member
|
0 |
|
|
Joined: 25/09/2011 07:16:15
Messages: 2
Offline
|
|
Học cái này dễ hiểu nè
http://www.mediafire.com/?6qqj2zebpompqlj |
|
|
Users currently in here |
1 Anonymous
|
|
Powered by JForum - Extended by HVAOnline
hvaonline.net | hvaforum.net | hvazone.net | hvanews.net | vnhacker.org
1999 - 2013 ©
v2012|0504|218|
|
|