📄 dalton ucr.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0045)http://www.cs.ucr.edu/~dalton/i8051/i8051sim/ -->
<HTML><HEAD><TITLE>Dalton UCR</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.2919.6307" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff text=#000000>
<P>
<CENTER>
<H1>Intel 8051 Simulator</H1></CENTER>The following is a high level simulator
for the Intel 8051 written in C++. The simulator allows a user to simulate
simple programs written for the 8051. The simulator provides statistics on
instructions executed, instructions executed per second, execution cycles
required by the 8051, and average instructions per second for an 8051 executing
the same program.
<P>
<H2>Not Supported</H2>
<UL>
<LI>input ports
<LI>interrupts
<LI>movx instructions </LI></UL>
<H2>Download</H2>
<H3>Version 1.3 Source File Listing</H3><A
href="http://www.cs.ucr.edu/~dalton/i8051/i8051sim/src1.3/i8051.h">i8051.h</A><BR><A
href="http://www.cs.ucr.edu/~dalton/i8051/i8051sim/src1.3/i8051.cc">i8051.cc</A><BR><A
href="http://www.cs.ucr.edu/~dalton/i8051/i8051sim/src1.3/main.cc">main.cc</A><BR><A
href="http://www.cs.ucr.edu/~dalton/i8051/i8051sim/src1.3/Makefile">Makefile</A><BR>
<P>
<H3>Changes in Version 1.3</H3>
<UL>
<LI>Fix problem with ANL and XRL instructions. Code fix provided by Ann
Gordon-Ross. </LI></UL>
<P>
<H2>Test Files</H2>Test files can be found on the <A
href="http://www.cs.ucr.edu/~dalton/i8051/i8051syn#test">Synopsys Synthesizable
Intel 8051 Model</A> page. All test files except <B>testall</B> have been
verified to function properly with this simulator.
<P>
<H2>Instructions</H2>
<P>The simulator will continue executing the provided program until either the
user hit Ctrl-C or the program completion condition is met. The program
completion condition can be set by defining a macro PROGRAM_COMPLETION located
in <B>i8051.h</B> to indicate the program completion condition, e.g., RAM[P0] ==
0x01. <BR>
<P>The program's output can be controlled through the macros PORTS, DEBUG,
DEBUG_PC and DETAIL located in <B>i8051.h</B>. If PORTS is defined, anytime one
of the output ports of the 8051 changes all ports will be printed out. If DEBUG
is defined, a trace of all instructions executed by the simulator will be
outputted to the output file specified by the user. If DEBUG is defined and
DEBUG_PC is defined the PC for each instruction executed will be outputted to
the output file. Finally, if DETAIL is defined, more information regarding each
instruction will outputted to the output file.
<P>NOTE: DEBUG_PC and DETAIL are only available in versions 1.2 and 1.1. <BR>
<P>To use the simulator, edit <B>i8051.h</B> and uncomment the PORTS, DEBUG,
DEBUG_PC, and/or DETAIL macros to enable the respective output. Modify the macro
PROGRAM_COMPLETION to the appropriate completion condition. If there is no
program completion condition do not define PROGRAM_COMPLETION. Make the
executable using the supplied <B>Makefile</B>. The program can be invoked by the
following command <BR>
<P>
<UL><I>8051sim < hexfile > < outfile ></I></UL>
<P>
<H2>Previous Versions of Simulator</H2>
<P>An archive of previous versions of the simulator can be found <A
href="http://www.cs.ucr.edu/~dalton/i8051/i8051sim/old_versions.html">here.</A>
<P>
<H2>Problems And Comments</H2>
<P>Please direct any problems and comments to <A
href="mailto:dalton@cs.ucr.edu">dalton@cs.ucr.edu</A>. We will respond to all
inquiries as quick as possible.
<P><A href="http://www.cs.ucr.edu/~dalton">Return to Dalton home page</A>
<HR>
<P><IMG src="Dalton UCR.files/counter.gif"><BR><I>Last Updated 1/5/2001</I>
</P></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -