Last month saw Prolog this language, its special grammar attracted me, but after a period of study, I found that it is not as magical as the legend on the Internet, but I am still interested in it, there are predecessors said Prolog itself is not strong, But used as a supplementary language to solve some special problems or very effective, it happens that I am a C #, I looked up how to combine
Chapter 1 of the title page introduces 1.1 SWI-Prolog1.2 status 1.3 compliant with ISO 1.4 do you want to use SWI-Prolog? 1.5 xpce prolog1.6 Release Notes 1.7 donated SWI-Prolog project 1.8 thanks Chapter 2 Overview 2.1 Quick Start 2.2 user's initialization file 2.3 initiali
This series of articles is an online prolog learning material: Www.learnprolognow.org's Chinese translation. Hope to be able to translate this learning materials, to achieve two purposes: first, the system to learn prolog knowledge; second, improve the understanding of English articlesand translation capabilities.Content Summary:Give some simple examples of Prolog
1) Use of SWI commands
Area addreg, CODE, READONLY
ENTRY
MAIN
ADR r0, ThunbProg 1; (Why add 1? When the BX command jumps to the specified address to execute the program, if the (BX {cond} Rm) Rm bit [0] is 1, then, the flag T in CPSR is automatically set during the jump to interpret the target code as the Thunb code)
BX r0
CODE16
ThunbProg
Mov r2, #2
Mov r3, #3
Add r2, r2, r3
ADR r0, ARMProg
BX ro
CODE32
ARMProg
Mov r4, #4
Mov r5, #5
Add r4, r4, r5
St
From: http://www.diybl.com/course/6_system/linux/Linuxjs/20090515/167024.html
A Unix system sends a system call to the kernel to implement most interfaces between user-mode processes and hardware devices. System calls are services provided by the operating system. User Programs reference various services provided by the kernel through various system calls. The execution of system calls puts user programs into the kernel, this is completed by SWI soft
The SWI module manages software interruption services. These interrupt service programs are closely related to Hwi hardware interrupt service programs. Generally, most of the daily processing functions are placed in these software interrupt service programs for management and operation.
I. Overview of the SWI Module
In the DSP/BIOS kernel, the threads managed and run by the system are divided into four leve
must be modified to run in Visual Prolog.
SWI PROLOG
Http://www.swi-prolog.org/I have never used this version of PROLOG interpreter, but it runs faster than the interpreter of amzi Prolog, which is almost as fast as the compiled program of amzi, if you downl
Describes how to use SWI for an interruption.Privileged mode: A protection mode in which superisor SVC is used by the OS.It is actually an interruption. For hardware users, the interruption mode is defined by the user.1. Understand the available registers of normal user statusR0 ~ R7 universal R8 ~ R12 independent registers [some mode register groups are independent] R13-SP [independent] R14-LR [independent] PC [general] CPSR [independent]R0 ~ R7 Gene
also note that wamcc is 2.7 times faster than xsb-PROLOG and 5.6 times faster than SWI-Prolog (Tak benchmark is not considered ).
6.3 wamcc and commercial Prolog SystemNow let's compare wamcc with commercial Prolog systems, usually developed by some people for years.
predicates. Target inside and outside, internal target is written in the program, the external target is entered manually by the user when the program is running.Example:? -Student (John)?-for Prolog software prompt, student (John) is the problem (target)A piece of code (written by Swi-prolog)test.pl fileLove (Zhangxueyou,wangfei), Love (Zhangxueyou,zhouhuimin),
The SWI exception interrupt command allows an application to call code in system mode in user mode. in the operating system, the code is called by the system,
How can this process be implemented? Let's learn with questions!
The SWI command contains a 24-bit immediate number (call interrupt number), which indicates the specific call function to be requested by the user, therefore, you need to read the inter
Take a look at the function call details:
Example:
1 In main. c
MicIrqFuncSet (timerrentint, 2, (unsigned int) IRQ_Timer1 );
The micIrqFuncSet function calls the function in viccontrol. h.
2 In viccontrol. h
_ Inline unsigned int micIrqFuncSet (unsigned int uiChannel,Unsigned int uiType,Unsigned int uiFuncAddr){Return swiHandle (0x100, uiChannel, uiType, uiFuncAddr );}
The inline function is used here, that is, the swiHandle function is actually called.
_ Sw
Content SummaryThis chapter focuses on a practical example of using a recursive manipulation list: Determining whether an element is contained in a list.It's time to introduce the example of a program in the first Prolog that uses a recursive manipulation list. One of the things that interests us most is whether an object is an element in a list. So, we want to write a program that when assumed input is an object x and a list L,The result is whether x
Content SummaryRule orderTarget OrderTerminateProlog is the first more successful logical programming language. The intrinsic implementation of the logic programming language is simple and attractive: The programmer's job is simply to describe the problem; the programmer should write down the declarative specifications (using the language's logic) (i.e., a knowledge base) to describe interesting states, facts, and relationships; a programmer should not tell the computer how to do it, and he asks
Exercises 5.1How will prolog answer the following questions?1. X = 3*4.2. X is 3*4.3.4 is X.4. X = Y.5.3 is 1+2.6.3 is + (.).7.3 is x+2.8. X is 1+2.9.1+2 is 1+2.Is (X, + ()).11.3+2 = + (3,2).12. * (7,5) = 7*5.13. * (7, + (3,2)) = 7* (3+2).14. * (7, (3+2)) = 7* (3+2).15.7*3+2 = * (7, + (3,2)).16. * (7, (3+2)) = 7* (+ (3,2)).My answers and explanations:1. Prolog will answer:X = 3*4, because this is a unity. 2
Content SummaryList definition;The use of oneness in the list;anonymous variables;List definitionAs the name implies, a list is a collection of multiple elements. More precisely, it is a finite sequence of elements. In the Prolog list, there are some specific examples:[Mia, Vincent, Jules, Yolanda][Mia, Robber (Honey_bunny), X, 2, Mia][ ][Mia, [Vincent, Jules], [Butch, Girlfriend (Butch)][[], Dead (z), [2, [B, C]], [], Z, [2, [B, C]]]From the example
The core of Geni--Inference machine (1) Knowledge representationThe last sentence of the goal paragraph is the clause infer (), which implies "reasoning".Thus, enter the core of the Geni and look at the operation of the inference machine.Infer () Infer ():-topic (Maingoal,_), Go ([],maingoal, ""),!. Infer ():-errorexit.Topic (maingoal,_)Topic existing in the fact base Geni, take out the Maingoal = "Animal",See the "Visual Prolog Web Expert system (4
3. Use WordNet to discuss the basic issues of using WordNet, and give several convenient predicates to improve efficiency. For more documents, see the source program. (1) Create the WordNet database file for indexing Prolog, with a total of 484381 lines of code. Therefore, improving file processing speed is one of the main goals of WordNet. One way to reduce word query time is to create an index. To search for words from WordNet, we need to use the pr
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.