Viết hoặc mở chương trình
Bắt đầu từ một ví dụ, tự gõ hợp ngữ hoặc mở tệp .s. Đặt dữ liệu dưới .data và mã dưới .text.
Gõ hợp ngữ RV32IM với nhãn và lệnh giả, rồi chạy ở tốc độ tối đa hoặc từng lệnh một.
Đặt breakpoint, lùi bước, và theo dõi thanh ghi, bộ nhớ, mã máy và console khi chương trình chạy.
Đang tải trình mô phỏng RISC-V…
Bắt đầu từ một ví dụ, tự gõ hợp ngữ hoặc mở tệp .s. Đặt dữ liệu dưới .data và mã dưới .text.
Bấm Chạy để chạy ở tốc độ tối đa, hoặc Bước để chạy một lệnh và xem thanh ghi, bộ nhớ nào thay đổi. Bấm cạnh số dòng để đặt breakpoint.
Nhập và xuất diễn ra trong console. Kiểm tra thanh ghi và bộ nhớ, lùi bước để tìm chỗ sai, và sao chép mã máy dạng hex.
Lỡ đi quá một bước? Lùi bước hoàn tác các lệnh vừa chạy, kể cả thanh ghi, bộ nhớ và đầu ra, để bạn xem lại mà không phải chạy từ đầu.
call ghi đè ra. Hàm gọi hàm khác phải lưu ra vào stack trước và khôi phục trước ret, như trong ví dụ giai thừa.
Tab Mã máy đếm số lần mỗi lệnh đã chạy. Thân vòng lặp chạy thừa một lần hoặc không chạy lần nào chỉ thẳng đến lệnh nhánh sai.
Cần hình minh họa cho thiết kế bộ xử lý hay video cho khóa học? Tạo ngay với WaveSpeed AI.
Tạo hình minh họa dạng sơ đồ và ảnh bìa cho slide và báo cáo thí nghiệm.
Biến ý tưởng thành video giải thích ngắn cho lớp học.
Biến bản phác thảo bo mạch hoặc vỏ chip thành mô hình 3D.
$1 tín dụng miễn phí cho tài khoản mới đủ điều kiện. Không cần thẻ. Các công cụ tạo nội dung có yêu cầu tài khoản và credit riêng. Riêng Mô phỏng RISC-V thì miễn phí.
Có. Trình mô phỏng RISC-V online này miễn phí, không cần tài khoản, không giới hạn số lần chạy và không cần cài đặt gì.
Tập lệnh số nguyên cơ sở 32 bit (RV32I), mở rộng M cho nhân, chia và lấy dư, và đọc các bộ đếm cycle, time và instret — tập lệnh cốt lõi được dạy trong các môn kiến trúc máy tính và hợp ngữ.
Phần lớn là được. Mã bắt đầu tại 0x00400000 và dữ liệu tại 0x10010000, và system call dùng cùng số hiệu (a7 = 1 in số nguyên, 4 in chuỗi, 5 đọc số nguyên, 10 thoát, v.v.) như các trình mô phỏng giảng dạy phổ biến. Tab Tham khảo liệt kê đầy đủ.
Đặt số hiệu lời gọi vào a7 và đối số vào a0, rồi chạy ecall. Khi chương trình đọc, console sẽ yêu cầu đầu vào: gõ vào và nhấn Enter. Bạn cũng có thể gõ trước khi chương trình hỏi.
Số lệnh là chính xác. Số chu kỳ là ước tính cho lõi in-order đơn giản: 1 chu kỳ mỗi lệnh, 2 cho mỗi lệnh nạp, 3 cho mỗi lệnh nhảy hoặc nhánh được thực hiện, 3 cho mỗi phép nhân và 33 cho mỗi phép chia.
Có. Tab Mã máy hiển thị địa chỉ, word hex và dạng giải mã của mọi lệnh. Sao chép dạng hex, mỗi word một dòng, hoặc tải tệp .hex hay tệp .bin thô.
Word phải được đọc và ghi ở địa chỉ là bội số của 4, còn halfword ở bội số của 2. Đặt .align 2 trước dữ liệu word, hoặc kiểm tra lại địa chỉ bạn đã tính. Thông báo lỗi nêu rõ địa chỉ và dòng.
Có. Lùi bước hoàn tác tối đa 4.096 lệnh gần nhất, kể cả thanh ghi, bộ nhớ và đầu ra, để bạn tìm lỗi mà không phải chạy lại từ đầu.
Không. Việc hợp dịch và chạy diễn ra trong trình duyệt, và chương trình được lưu trong bộ nhớ của trình duyệt này nên lần sau vẫn còn.
Miễn phí, riêng tư và sẵn sàng bất cứ lúc nào.