Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Ajuda do Scilab >> Funções > macr2lst

macr2lst

conversão de função para lista

Seqüência de Chamamento

lst = macr2lst(function_name)

Arguments

function_name

a function to be converted.

lst

a list.

Descrição

Esta primitiva converte uma versão compilada do Scilab function_name em uma lista que codifica a representação interna da função (notação polonesa inversa).

A primeira entrada da lista é o nome da função, as segunda e terceira são, respectivamente, os vetores das variáveis de lado esquerdo e direito (lhs e rhs). As entradas seguintes são registros de operação básica ou listas que contém as estruturas de controle hierárquicas como if, for, ...

Registros de operação básica são descritos por um vetor de strings cujo primeiro elemento representa código do operador (op code).

op codes significado parâmetros
"0" opcode ignorado nenhum
"1" não mais usado
"2" referência à função ou variável nome da variável, #rhs, #lhs
"3" coloca um string na pilha um string
"4" coloca uma matriz vazia na pilha nenhum
"5" aplica uma operação código de operação, #rhs,#lhs
"6" coloca um número na pilha o número
"12" comando pause nenhum
"13" comando break nenhum
"14" comando abort nenhum
"15" marca de fim da linha nenhum
"17" comando quit nenhum
"18" variável nomeada nome da variável
"19" cria estrutura de índice recursiva comprimento do endereço, número de índices finais
"20" chamada a função nome da função, #rhs, #lhs
"23" cria variável a partir do nome nome da variável
"24" coloca uma variável de tipo 0 na pilha nenhum
"25" registro de perfil número da chamada, gasto de tempo
"26" coloca um vetor de strings na pilha #linhas, #colunas, seqüência de elementos
"27" coloca uma referência a um builtin na pilha número da interface, posição da interface, nome da função
"28" comando continue nenhum
"29" atribuição #lhs, modo de exibição, (nome da variável, #rhs)*
"30" curto circuito de expressão lógica tipo, tamanho do salto (jump)
"31" comentário o comentário
"99" comando return nenhum
> "100" chamada a um builtin (obsoleto) 100*fun, #rhs, #lhs, fin

A função fun2string pode ser usada para se gerar o código inicial

Exemplos

//EXIBIÇÃO
function y=foo(x, flag)
  if flag then
    y=sin(x)
  else
    y=cos(x)
  end
endfunction
L=macr2lst(foo)
fun2string(L)

Ver Também

  • macrovar — variáveis de uma função
  • fun2string — gera definição ASCII de uma função Scilab
  • macr2tree — conversão de função para árvore
  • tree2code — gera a definição ASCII de uma função Scilab
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Apr 01 10:24:30 CEST 2015