Analysis and synthesis phase of compiler

There are two main phases in the compiler.

1. Analysis - Front end of a compiler

2. Synthesis - Back end of a compiler

In this tutorial, we will learn the role of analysis and synthesis phase of a compiler.

Analysis phase of compiler

Analysis phase reads the source program and splits it into multiple tokens and constructs the intermediate representation of the source program.

And also checks and indicates the syntax and semantic errors of a source program.

It collects information about the source program and prepares the symbol table . Symbol table will be used all over the compilation process.

This is also called as the front end of a compiler.

Synthesis phase of compiler

It will get the analysis phase input(intermediate representation and symbol table) and produces the targeted machine level code.

This is also called as the back end of a compiler.

Compiler Phases

Compiler Architecture

Compilers perform translation. Every non-trivial translation requires analysis and synthesis:

analsyn.png

Both analysis and synthesis are made up of internal phases.

Compiler Components

These are the main functional components of a production compiler that looks to generate assembly or machine language (if you are just targeting a high-level language like C, or a virtual machine, you might not have so many phases):

compilerphases.png

You might also identify an error recovery subsystem and a symbol table manager , too.

Lexical Analysis (Scanning)

An example in C:

gets tokenized into:

unsigned ID(gcd) ( unsigned int ID(x) , unsigned ID(y) ) { while ( ID(x) > INTLIT(0) ) { unsigned ID(temp) = ID(x) ; ID(x) = ID(y) % ID(x) ; ID(y) = ID(temp) ; } return ID(y) ; }

Scanners are concerned with issues such as:

  • Case sensitivity (or insensitivity)
  • Whether or not blanks are significant
  • Whether or not newlines are significant
  • Whether comments can be nested

Errors that might occur during scanning, called lexical errors include:

  • Encountering characters that are not in the language’s alphabet
  • Too many characters in a word or line (yes, such languages do exist!)
  • An unclosed character or string literal
  • An end of file within a comment

Syntax Analysis (Parsing)

The parser turns the token sequence into an abstract syntax tree . For the example above, we get this tree:

gcdast1.png

The tree can also be stored as a string

Technically, each node in the AST is stored as an object with named fields, many of whose values are themselves nodes in the tree. Note that at this stage in the compilation, the tree is definitely just a tree. There are no cycles.

gcdast2.png

When constructing a parser, one needs to be concerned with grammar complexity (such as whether the grammar is LL or LR), and whether there are any disambiguation rules that might have to be hacked in. Some languages actually require a bit of semantic analysis to parse.

Errors that might occur during parsing, called syntax errors include things like following, in C

  • j = 4 * (6 − x;

Combining Scanning and Parsing

It is not necessary to actually separate scanning (lexical analysis / tokenization) from parsing (syntax analysis / tree generation). Systems based on PEGs, like Ohm, are actually scannerless : they perform parsing in a predictive fashion, with lexical and syntactic rules mixed together . (However, systems like Ohm will need a pre-parsing phase to handle indents and dedents.)

When using a scannerless system, the language designer and compiler writer still thinks in terms of tokens and phrases, but does not have to worry about complex rules like the so-called Maximal Munch principle. Lookahead captures any kind of tokenization scheme you need. Besides, the predictive nature of scannerless parsing means we never have to decide whether a * is a unary operator pointer dereference token or a binary multiplication operator token or a star token. We always have context when parsing predictively.

Semantic Analysis

During semantic analysis we have to check legality rules and while doing so, we tie up the pieces of the syntax tree (by resolving identifier references, inserting cast operations for implicit coercions, etc.) to form a semantic graph .

Continuing the example above:

gcdsemgraph.png

Obviously, the set of legality rules is different for each language . Examples of legality rules you might see in a Java-like language include:

  • Multiple declarations of a variable within a scope
  • Referencing a variable before its declaration
  • Referencing an indentifier that has no declaration
  • Violating access (public, private, protected, ...) rules
  • Too many arguments in a method call
  • Not enough arguments in a method call
  • Type mismatches (there are tons of these)

Intermediate Code Generation

The intermediate code generator produces a flow graph made up of tuples grouped into basic blocks. For the example above, we’d see:

gcdflowgraph.png

You can read more about intermediate representations elsewhere.

Machine Independent Code Improvement

Code improvement that is done on the semantic graph or on the intermediate code is called machine independent code optimization. In practice there are zillions of known optimzations (er, improvements), but none really apply to our running example.

Code Generation

Code generation produces the actual target code, or something close. This is what I got when assembling with gcc 6.3 targeting the x86-64, without any optimizations:

Here is code for the ARM, using gcc 5.4, without optimizations:

And MIPS code with gcc 5.4, also unoptimized:

Machine Dependent Code Improvement

Usually the final phase in compilation is cleaning up and improving the target code. For the example above, I got this when setting the optimization level to -O3 :

Optimized ARM code:

Optimized MIPS code:

  • Increase Font Size

1 Compiler Design

T.V. Geetha

Objective: To understand the processes involved in Compiler Design.

1.     Introduction :

This module starts with discussing the need for a Translator, Compiler. This module also tries to group the compiler into phases which will be discussed in the later part of this module. To begin, let us get to introduce a brief history of compilers.

1.1 A brief History.

In this Context, software can be defined as an essential component of the current scenario. Normally in earlier days software was written in assembly language. The instructions are written in Mnemonic code. For example, to add two numbers the following would be the assembly code.

In statement (1.1), MOV is a command that would move the value stored in variable ‘a’ to register ‘R1’, ‘b’ to R2. The command ADD then adds the contents of the registers R1 and R2 and stores the result in R1. As one could observe, these instructions are closer to the machine than to the human. The drawbacks of writing programs in assembly instructions are:

–   Very difficult to remember instructions

– Benefits of reusing software on different CPUs became greater than the cost of designing compiler

–   Very cumbersome to write

These drawbacks trigger the need for software that will understand human language and that is the birth of Language Processors called translators.

1.1.2. Language Processors

A translator is one that converts a source program written in one language to a target program in another language. This is similar to having a translator when two people who doesn’t know the other person’s language want to communicate. In the context of computer Science, a Source program is written in one programming language and a Target Program typically belongs to machine language. The Target language is called machine language as it is easier for the machine to understand. Some of the translators are As sembler, Compiler and Interpreter. Compiler converts programs written in high-  level programming language to assembly language. Assemblers convert assembly language programs to machine language (object language).

The translators help programmers to write programs in a language that is easier for them to remember and understand and converts them into a language that is closer to the machine. This results in the following ways of designing software:

a.       Design an interpreter / translator to convert human language to machine language

The interpreter will have difficulties in parsing which may be ambiguous. For example, inefficient parsing would result in incorrect word boundaries during interpretation resulting in ambiguity.

b.      Design a compiler that will understand high level language which is not necessarily in English but closer to English and convert that to assembly language.

The design is complex but parsing ambiguity could be avoided. The major drawback is the mapping of the high level language to assembly language. This also necessitates the designing a compiler for every high level programming language keeping in mind the instruction set of the target assembly language.

c.       Design an assembler that converts assembly language to machine language The drawback of this is that the target language needs to be specified. Output of the various compilers to be known prior time

So, our aim is to design a Compiler and Assembler for converting high-level language to machine language. In addition, certain other things are need for pre-processing and execution which is discussed in the next section.

1.2 Language Processing System

A typical Language Processing system is given in Figure 1.1. The source program – program written in high-level programming language goes through a pre-processor. The pre-processor replaces macros and converts them into a complete code. For example, if we have a statement called #define MAX 100, in the source program, the pre-processor replaces MAX with 100 in all the places in the source program and passes it to the compiler. The compiler converts this to assembly language and the assembler converts to object language. At this point, the object language is called as the re-locatable object code. The code is re-locatable as it doesn’t have the exact address of the memory at which this code is to be loaded for execution. This re-locatable machine code is passed on to the linker. The linker will link multiple source files into one or link the current source files with the object code of the standard library and gets one object file. This file is  thenloaded    into    the   main   memory    for     execution    by     the    loader .

1.2.1      Types of Code

In the process of generating assembly level code, the compiler could generate any one of the following types of codes:

  • Pure Machine Code: This refers to the set of Machine instruction which is independent of any operating system or library. These codes are typically available for the Operating Systems or Embedded Applications.
  • Augmented Machine Code: They refer to the machine instruction that has operating system routines along with run-time support routines.
  • Virtual Machine Code: These refer to the Virtual instructions that can be run on any architecture with a virtual machine interpreter or a just-in-time compiler. Ex: Java

1.2.2    Work of a Compiler

The Compiler has to necessarily do the following to translate high-level source code to low-level assembly code

  • Processes source program
  • Prompts errors in source program
  • Recovers / Corrects the errors
  • Produce assembly language program

After generating assembly language program, an assembler is used to convert the assembly language code into a relocatable machine code. The time of conversion from source program into object program is called compile time. The object program is executed at run time

1.3 Interpreter

An Interpreter is a language processor that executes the operation as specified in the source program. The inputs are supplied by the user. The interpreter processes an internal form of the source program and data at the same time (at run time) and therefore no object program is generated.

1.3.1 Compiler vs Interpreter

The following are some comparison between the compiler and the interpreter.

  • v For a compiler, a higher degree of machine independence exists and hence it facilitates high portability.
  • v A compiler supports dynamic execution. This helps in making modification or addition to user programs even during execution.
  • v A compiler also supports dynamic data type which helps in supporting the change in the type of object even during runtime
  • v An Interpreter on the other hand requires no synthesis part.
  • v Interpreter provides better diagnostics: more source text information available
  • v The machine-language target program produced by a compiler is much faster than an interpreter at mapping input to output.
  • v An interpreter is better with error diagnostics as it executes the source program statement by statement.

1.4 Compilation process

The process of Compilation and Interpretation is given in Figures 1.3 and 1.4 respectively.

three As discussed, the compiler converts source program into relocatable object program, which then uses the data and executes in main memory on the other hand, the interpreter uses the source program and data and produces the execution without any intermediate object program.

1.4.1 Compiler

The compiler consists of two parts: Analysis and Synthesis.

  • – The analysis part breaks up the source program into constituent pieces and imposes a grammatical structure on them. It then uses this structure to create an intermediate representation of the source program.
  • – The synthesis of its corresponding program: constructs the desired target program from the intermediate representation and the information in the symbol table.

The analysis part is often called the front end of the compiler; the synthesis part is the back end .

The Front End of the Compiler is typically language dependent. It depends on the source language but it does not depend on the target machine’s architecture. The Back End is target dependent as it requires the instruction set of the target machine but it doesn’t require information of the source language.

The Analysis and the Synthesis part of the Compiler is given in Figure 1.5. The Analysis part consists of components while the Synthesis part consists of two components Code Generation and Optimization. In the process, it uses Error Table and a Symbol table for the generation of target code.

1.4.2 Compiler Passes

The grouping of the work of the compiler into analysis and synthesis part poses the following questions.

  • How many passes should the compiler go through?
  • One for analysis and one for synthesis?
  • One for each division of the analysis and synthesis?

To answer all these questions, the work done by a compiler is grouped into phases which is discussed in the next section.

1.4 Phases of the Compiler

The compiler’s analysis and synthesis part is grouped into 6 phases and is shown in Figure 1.6. The first three phases belong to the analysis phase and the last three phases to the synthesis phase. All the phases of the compiler interacts with the symbol table and the error handler.

Lexical Phase: Lexical analyzer reads the stream of characters from the source program and combines the characters into meaningful sequences called lexeme. For every lexeme, the lexer (lexical analyser) produces a token of the form which is passed to the next phase of the compiler. The token is of the form <token-name, attribute-value>, where token-name is an abstract symbol that is used during syntax analysis and an attribute-value: points to an entry in the symbol table for this token. During this phase, the symbol is created by the compiler, which has the information about the lexeme. The lexical analyser , typically skips all blanks, unwanted white spaces and comment lines that is being available in the source program.

Syntax Phase: The syntax phase of the compiler is the second phase. The phase is where the input from the source program is parsed and hence this phase is referred to as the Parser (parsing phase). The parser uses the tokens produced by the lexer to create a tree-like intermediate representation that verifies the grammatical structure of the sequence of tokens. A typical representation is a syntax tree in which each interior node represents an operation and the children of the node represent the arguments of the operation

Semantic Phase: The semantic analyzer uses the output of the parser, which are the syntax tree and the information in the symbol table to check for semantic consistency in the source program. In this phase, the compiler gathers type information about the variables, operations, etc., and saves it in either the syntax tree or the symbol table, for subsequent use during intermediate-code generation. Type checking is done in this phase, where the compiler checks that each operator has matching operands. For example, typically an array index need to be an integer and the compiler must identify an error if a floating-point number is used to as an array index. Yet another job of the Semantic phase is type conversion, referred to as coercion. For example, a binary arithmetic operator may be applied to either a pair of integers or to a pair of floating-point numbers. If the operator is applied to a floating-point number and an integer, the compiler may convert or coerce the integer into a floating-point number.

Intermediate Code Generation: Compilers generate an explicit low-level or machine-like intermediate representation. This representation is necessary for generating assembly language. The characteristics of the intermediate representation are

•         Ease of Generation

•         Ease of translation to target assembly language.

The input to this phase is the syntax tree and output is intermediate code. A convention for Intermediate code generation is the three address code. The three address code has at the most three operands and 2 operators. For example,

As expressed in statement 1.2, x, y, z are three operands which are typically addresses and ‘op’ refers to the operator in addition to the ‘=’ operator.

Code Optimization: This phase can operate either before or after code generation. The aim of his phase is to improve the intermediate code so that it results in better target code. This phase  also aims at generating faster, shorter code, so that target code is generated that consumes less power. The important characteristic of this phase is to carry out simple optimizations that significantly improve the running time of the target program without slowing down compilation

Code Generation: This phase generation target assembly language. In this phase, the registers or memory locations are selected for each of the variables used by the program. The inputs to this phase which are the intermediate instructions are translated into sequences of machine instructions to complete an operation. One of the important consideration of code generation is the assignment of registers to hold variables as we have limited number of registers. This phase also need to decide on the choice of instructions involving registers, memory or a mix of the two.

Symbol Table: The symbol table is implemented as a data structure containing a record for each variable name, with fields for the attributes of the name. The symbol table is designed to help the compiler to identify and fetch the record for each name quickly. The symbol table has attributes that may provide information about the storage allocated for a name, its type, its scope. It also provides details on the function or procedure names, such things as the number and types of its arguments, the method of passing each argument and the return type.

Error Handler: The errors encountered in every phase are logged into the error handler for subsequent reporting to the user. The compiler however, recovers from the errors in every phase so that it can proceed with the compilation process. The compiler recovers from errors in either the panic mode of error recovery or phrase mode of error recovery.

Multi-pass Compiler: Several phases can be implemented as a single pass consist of reading an input file and writing an output file. A typical multi-pass compiler could do the following:

  • First pass: preprocessing, macro expansion
  • Second pass: syntax-directed translation, IR code generation
  • Third pass: optimization
  • Last pass: target machine code generation

1.5 Summary

This module discussed need for a compiler and the various phases of the compiler.

Library homepage

  • school Campus Bookshelves
  • menu_book Bookshelves
  • perm_media Learning Objects
  • login Login
  • how_to_reg Request Instructor Account
  • hub Instructor Commons
  • Download Page (PDF)
  • Download Full Book (PDF)
  • Periodic Table
  • Physics Constants
  • Scientific Calculator
  • Reference & Cite
  • Tools expand_more
  • Readability

selected template will load here

This action is not available.

Engineering LibreTexts

1.5: Compiling- Analysis Phase

  • Last updated
  • Save as PDF
  • Page ID 29009

  • Patrick McClanahan
  • San Joaquin Delta College

Lexical Analyzer - also called  tokenization. 

The phase of the compiler splits the source code into tokens. A  lexical token  or simply  token  is a string with an assigned and thus identified meaning. It is structured as a pair consisting of a  token name  and an optional  token value . Common token names are

identifier : names the programmer chooses;

keyword : names already in the programming language;

separator  (also known as punctuators): punctuation characters and paired-delimiters;

operator : symbols that operate on arguments and produce results;

literal : numeric, logical, textual, reference literals;

comment : line, block.

Consider this expression in the C programming language:

x = a + b * 2;

The lexical analysis of this expression yields the following sequence of tokens:

Syntax Analyzer

This is the process of checking a string of symbols, created by the lexical analysis stage,  to see how well the symbols are how they need to be. This is determined by the use of the rules of a formal grammar. For C++, as with any programming language, is a well defined syntax of the language, just as there is a defined syntax for all written languages.

If the symbols do NOT follow the rules of the grammar the compiler generates a "syntax error" and compilation stops, and attempts to communicate to the user what and where the error is. 

Semantic Analyzer

Semantic analysis performs semantic checks such as type checking (makes sure that mathematical operations are being performed on variables declared as int or float), or object binding (making sure that declarations match and function calls and types are correct), or definite assignment (requiring all local variables to be initialized before use), rejecting incorrect programs or issuing warnings. Semantic analysis logically follows the parsing phase, and logically precedes the code generation phase, though it is often possible to fold multiple phases into one pass over the code in a compiler implementation.

Adapted from:  "Introduction of Compiler Design"  by  Rajesh Kr Jha ,  Geeks for Geeks  is licensed under  CC BY-SA 4.0 "Lexical analysis"  by Numerous contributors  is licensed under  CC BY-SA 3.0 "Parsing"  by  Numerous contributors  is licensed under  CC BY-SA 3.0   "Compiler"  by  Numerous contributors  is licensed under  CC BY-SA 3.0

  • Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer

projectsgeek

ProjectsGeek

Download Mini projects with Source Code, Java projects with Source Codes

Two Pass Assembler Source Code

June 21, 2011 by TestAccount 4 Comments

Implementation of TWO Pass assembler

Implementation of TWO Pass assembler with hypothetical Instruction set  Instruction set should include all types of assembly language statements such  as Imperative, Declarative and Assembler Directive. While designing stress  should be given on

  • How efficiently Mnemonic opcode table could be implemented so as  to enable faster retrieval on op-code.
  • Implementation of symbol table for faster retrieval.  ( Concepts in DSF should be applied while design)

TWO Pass assembler

To learn the basic translation process of assembly language to machine  Language.

A language translator bridges an execution gap to machine language of computer system. An assembler is a language translator whose source language is assembly language.

Language processing activity consists of two phases, Analysis phase and synthesis phase. Analysis of source program consists of three components, Lexical rules, syntax rules and semantic rules. Lexical rules govern the formation of valid statements in source language. Semantic rules associate the formation meaning with valid statements of language. Synthesis phase is concerned with construction of target language statements, which have the same meaning as source language statements. This consists of memory allocation and code generation.

Analysis of source program statements may not be immediately followed by synthesis of equivalent target statements. This is due to forward references issue concerning memory requirements and organization of Language Processor (LP).

Forward reference of a program entity is a reference to the entity, which precedes its definition in the program. While processing a statement containing a forward reference, language processor does not posses all relevant information concerning referenced entity. This creates difficulties in synthesizing the equivalent target statements. This problem can be solved by postponing the generation of target code until more information concerning the entity is available. This also reduces memory requirements of LP and simplifies its organization. This leads to multi-pass model of language processing.

Language Processor Pass

It is the processing of every statement in a source program or its equivalent representation to perform language-processing function.

Assembly Language statements

There are three types of statements Imperative, Declarative, Assembly directives. An imperative statement indicates an action to be performed during the execution of assembled program. Each imperative statement usually translates into one machine instruction. Declarative statement e.g. DS reserves areas of memory and associates names with them. DC constructs memory word containing constants. Assembler directives instruct the assembler to perform certain actions during assembly of a program,  e.g. START directive indicates that the first word of the target program generated by assembler should be placed at memory word with address

Function Of Analysis And Synthesis Phase

Analysis phase.

  • Isolate the label operation code and operand fields of a statement.
  • Enter the symbol found in label field (if any) and address of next available machine word into symbol table.
  • Validate the mnemonic operation code by looking it up in the mnemonics table.
  • Determine the machine storage requirements of the statement by considering the mnemonic operation code and operand fields of the statement.
  • Calculate the address of the address of the first machine word following the target code generated for this statement (Location Counter Processing)

Synthesis Phase

  • Obtain the machine operation code corresponding to the mnemonic operation code by searching the mnemonic table.
  • Obtain the address of the operand from the symbol table.
  • Synthesize the machine instruction or the machine form of the constant as the case may be.

Design of a Two Pass Assembler

Tasks performed by the passes of two-pass assembler are as follows:

  • Separate the symbol, mnemonic opcode and operand fields.
  • Determine the storage-required foe every assembly language statement and update the location counter.
  • Build the symbol table and the literal table.
  • Construct the intermediate code for every assembly language statement.

Synthesize the target code by processing the intermediate code generated during

Data structures required for pass I

  • Source file containing assembly program.
  • MOT: A table of mnemonic op-codes and related information.

It has the following fields

Mnemonic : Such as ADD, END, DC

TYPE : IS for imperative, DL for declarative and AD for Assembler directive

OP- code : Operation code indicating the operation to be performed.

Length : Length of instruction required for Location Counter Processing

Hash table Implementation of MOT to minimize the search time required for searching the instruction.

Hash Function used is ASCII Value of the First letter of Mnemonic – 65. This helps in retrieving the op- code and other related information in minimum time. For Example the instruction starting with alphabet ‘A’ will be found at index location 0, ‘B’ at index 1, so on and so forth. If more instructions exist with same alphabet then the instruction is stored at empty location and the index of that instruction is stored in the link field. Thus instructions starting with alphabet ‘D’ will be stored at index locations 3,5,and 6. Those starting with E will be stored at 4 and 7 and the process continues.

SYMTB: The symbol table.

Fields are Symbol name, Address (LC Value). Initialize all values in the address fields to -1 and when symbol gets added when it appears in label field replace address value with current LC. The symbol if it used but not defined will have address value -1 which will be used for error detection.

Intermediate form used Variant 1 / Variant 2

Students are supposed to write the variant used by them.

Data Structure used by Pass II

  • OPTAB: A table of mnemonic opcodes and related information.
  • SYMTAB: The symbol table
  • LITTAB: A table of literals used in the program
  • Intermediate code generated by Pass I
  • Output file containing Target code / error listing.
  • Open the source file in input mode.
  • if end of file of source file go to step 8.
  • Read the next line of the source program
  • Separate the line into words. These words could be stored in array of strings.
  • Search for first word is mnemonic opcode table, if not present it is a label , add this as a symbol in symbol table with current LC. And then search for second word in mnemonic opcode table.
  • If instruction is found

case 1 : imperative statement

case 2: Declarative statement

case 3: Assembler Directive

  • Generate Intermediate code and write to Intermediate code file.
  • go to step 2.
  • Close source file and open intermediate code file
  • If end of file ( Intermediate code), go to step 13
  • Read next line from intermediate code file.
  • Write opcode, register code, and address of memory( to be fetched from literal or symbol table depending on the case) onto target file. This is to be done only for Imperative statement.
  • go to step 9.
  • Close all files.
  • Display symbol table, literal table and target file.

Imperative statement case

If opcode >= 1 && opcode <=8 ( Instruction requires register operand)

a. Set type as IS, get opcode, get register code, and make entry into symbol or literal table as the case may be. In case of symbol, used as operand, LC field is not known so LC could be -1. Perform LC processing LC++. Updating of symbol table should consider error handling.

if opcode is 00 ( stop) :

Set all fields of Intermediate call as 00. LC++

else register operand not required ( Read and Print)

Same as case 1, only register code is not required, so set it to zero. Here again update the symbol table. LC++

On similar lines we can identify the cases for declarative and assembler directive statements based on opcode.

List of hypothetical instructions:

Instruction Assembly Remarks

Opcode mnemonic

00 STOP stop execution

01 ADD first operand modified condition code set

02 SUB first operand modified condition code set

03 MULT first operand modified condition code set

04 MOVER register memory

05 MOVEM memory register

06 COMP sets condition code

07 BC branch on condition code

08 DIV analogous to SUB

09 READ first operand is not used.

10 PRINT first operand is not used.

Forward reference(Symbol used but not defined): –

This error occurs when some symbol is used but it is not defined into the program.

Duplication of Symbol

This error occurs when some symbol is declared more than once in the program.

Mnemonic error

If there is invalid instruction then this error will occur.

Register error

If there is invalid register then this error will occur.

Operand error

This error will occur when there is an error in the operand field,

Other Projects to Try:

  • Macro Processor Algorithm
  • Lexical Analyzer for Subset of C
  • B tech final year project-Source Code Analyzer
  • 100+ .Net mini Projects with Source Code
  • Macro Processor Pass Two in C Language

Reader Interactions

sanket kurude says

February 11, 2016 at 7:22 pm

very nice work!!keep doing it guys!!

ProjectsGeek says

March 17, 2017 at 3:46 pm

Thanks ..!!

masood says

October 17, 2015 at 9:53 am

i need this project can you pls mail it to me

November 1, 2015 at 2:01 pm

You can read this assembler concept on website there is no attachment which we can send you.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Download Java Project

Download visual basic projects, download .net projects, download php projects, download c++ projects, latest projects ideas, assembly codes, datastructure assignments, computer graphics lab, operating system lab.

  • Engineering Mathematics
  • Discrete Mathematics
  • Operating System
  • Computer Networks
  • Digital Logic and Design
  • C Programming
  • Data Structures
  • Theory of Computation
  • Compiler Design
  • Computer Org and Architecture
  • Matrix Multiply in Optimizing for Parallelism and Locality
  • Introduction to Address Descriptor
  • Loader in Compiler Design
  • Advantages and Disadvantages of Compiler
  • Constituency Parsing and Dependency Parsing
  • Synthesis Phase in Compiler Design
  • Next use information in compiler design
  • Application of Deterministic Finite Automata (DFA)
  • Introduction to Register Descriptor
  • Advantages and Disadvantages of Assembler
  • History of Compiler
  • Lexical Analysis and Syntax Analysis
  • Phases of a Assembler
  • Parse Tree and Syntax Tree
  • Short-Pause Garbage Collection
  • Compiler and Go Loader
  • Context-Insensitive Interprocedural Analysis
  • Basic Concepts of Optimizing for Parallelism And Locality
  • Interprocedural Analysis

Issues, Importance and Applications of Analysis Phase of Compiler

Analysis phase of a compiler:.

The Analysis phase, also known as the front end of a compiler, is the first step in the compilation process. It is responsible for breaking down the source code, written in a high-level programming language, into a more manageable and structured form that can be understood by the compiler. This phase includes several sub-phases such as lexical analysis, parsing, and semantic analysis .

  • The lexical analysis phase is responsible for breaking down the source code into small, meaningful units called tokens. These tokens are then used by the next phase of the compiler, parsing, to build a structure representation of the source code, such as an Abstract Syntax Tree (AST).
  • The parsing phase takes the tokens generated by the lexical analysis phase and uses them to build a hierarchical representation of the source code. This representation is known as the Abstract Syntax Tree (AST) and it captures the grammatical structure of the source code.
  • The semantic analysis phase is responsible for checking the source code for semantic errors, such as type mismatches and undefined variables. It also attaches meaning to the various elements of the source code, such as variables and functions.

Issues in the Analysis Phase:

The analysis phase, also known as the parsing phase, is the first phase of a compiler. Its main task is to analyze the source code of a program and ensure that it is syntactically and semantically correct.

During the analysis phase, the compiler constructs an intermediate representation of the source code, usually in the form of an abstract syntax tree (AST) . This intermediate representation captures the structure and meaning of the source code and is used by the compiler to generate the target code in the next phase (the synthesis phase).

There are several issues that can arise during the analysis phase, including:

  • Syntax errors: These are errors in the source code that violate the rules of the programming language’s syntax. For example, a missing closing brace or an extra comma in an array declaration could cause a syntax error.
  • Semantic errors: These are errors in the source code that are not necessarily syntax errors, but still result in the code not behaving as intended. For example, using a variable before it has been initialized, or calling a function with the wrong number of arguments, could cause a semantic error.
  • Ambiguities: In some cases, the source code may be ambiguous and could be interpreted in multiple ways. This can cause the compiler to produce incorrect intermediate code or target code.
  • Unsupported features: If the source code uses features that are not supported by the compiler, it may fail to generate the correct intermediate code or target code.

Importance of the Analysis Phase:

The analysis phase of a compiler is an important step in the compilation process as it plays a crucial role in understanding and verifying the structure and meaning of the source code. Some key benefits of the analysis phase include:

  • Error detection: The analysis phase detects and reports errors in the source code, such as syntax errors or semantic errors, helping the developer fix them before the code is compiled.
  • Intermediate representation: The output of the analysis phase is typically an intermediate representation of the code, such as an abstract syntax tree, that can be used by the next phase of the compiler. This allows the compiler to work with a simplified and structured representation of the code, making it easier to generate machine code.
  • Improved code quality: By performing lexical, syntactic, and semantic analysis, the analysis phase can help ensure that the source code is well-structured, consistent, and semantically correct, resulting in better-quality code.
  • Language independent: The analysis phase is typically language independent, this means it can be applied to a wide variety of programming languages, making it a versatile and reusable component in a compiler.
  • Enabling optimization: The analysis phase provides the compiler with a deeper understanding of the source code which could lead to better optimization opportunities in the next phases.
  • Improving the development process: By detecting and reporting errors early in the development process, the analysis phase can save time and resources by reducing the need for debugging and testing later on.

Applications of the Analysis Phase:

The analysis phase of a compiler is an important step in the process of converting source code into an executable form. Some of the key applications of the analysis phase include:

  • Tokenization: During the analysis phase, the compiler breaks the source code down into smaller units called tokens. These tokens represent the different elements of the code, such as keywords, identifiers, operators, and punctuation.
  • Parsing: After tokenization, the compiler uses the tokens to build a representation of the code in a form that can be easily understood and processed. This is done through a process called parsing, which involves recognizing the patterns and structures that make up the code and building a tree-like structure called an abstract syntax tree (AST).
  • Semantic analysis: The compiler also performs semantic analysis during the analysis phase to ensure that the source code is well-formed and follows the rules of the programming language. This includes checking for syntax errors, type errors, and other issues that could cause the code to be incorrect or difficult to understand.
  • Intermediate representation: The result of the analysis phase is typically an intermediate representation of the code, which is a simplified, abstract version of the source code that can be easily processed by the compiler. This intermediate representation is often used as the input to the synthesis phase, which generates the target code that can be executed by the target platform.

1. What is the purpose of the analysis phase in a compiler? The analysis phase takes the source code and performs lexical, syntactic, and semantic analysis to identify and understand the structure and meaning of the code.

2. What are the main tasks performed in the analysis phase? The main tasks performed in the analysis phase include lexical analysis, syntactic analysis, and semantic analysis.

3. How does the analysis phase help in understanding the structure and meaning of the code? The analysis phase breaks down the source code into smaller components, such as tokens and grammar rules, and checks for errors and inconsistencies. This helps to identify and understand the structure and meaning of the code.

4. What is the output of the analysis phase? The output of the analysis phase is typically an intermediate representation of the code, such as an abstract syntax tree, that can be used by the next phase of the compiler.

5. How does the analysis phase handle errors in the source code? The analysis phase identifies and reports errors in the source code, such as syntax errors or semantic errors, to help the developer fix them.

6. How does the analysis phase handle platform-specific dependencies? The analysis phase is platform independent. Its main focus is to understand the structure and meaning of the code and doesn’t handle platform specific dependencies directly, it is done in the next phase.

Please Login to comment...

Similar reads.

  • Technical Scripter 2022
  • Technical Scripter

advertisewithusBannerImg

Improve your Coding Skills with Practice

 alt=

What kind of Experience do you want to share?

Thank you for visiting nature.com. You are using a browser version with limited support for CSS. To obtain the best experience, we recommend you use a more up to date browser (or turn off compatibility mode in Internet Explorer). In the meantime, to ensure continued support, we are displaying the site without styles and JavaScript.

  • View all journals
  • My Account Login
  • Explore content
  • About the journal
  • Publish with us
  • Sign up for alerts
  • Open access
  • Published: 16 April 2024

Synthesis of goldene comprising single-atom layer gold

  • Shun Kashiwaya   ORCID: orcid.org/0000-0002-0578-8218 1 ,
  • Yuchen Shi   ORCID: orcid.org/0000-0002-8904-9884 1 ,
  • Jun Lu   ORCID: orcid.org/0000-0001-5532-6030 2 ,
  • Davide G. Sangiovanni   ORCID: orcid.org/0000-0002-1379-6656 3 ,
  • Grzegorz Greczynski   ORCID: orcid.org/0000-0002-4898-5115 2 ,
  • Martin Magnuson   ORCID: orcid.org/0000-0002-0317-0190 2 ,
  • Mike Andersson 4 ,
  • Johanna Rosen 1 &
  • Lars Hultman   ORCID: orcid.org/0000-0002-2837-3656 2  

Nature Synthesis ( 2024 ) Cite this article

13k Accesses

504 Altmetric

Metrics details

  • Synthesis and processing
  • Two-dimensional materials

The synthesis of monolayer gold has so far been limited to free-standing several-atoms-thick layers, or monolayers confined on or inside templates. Here we report the exfoliation of single-atom-thick gold achieved through wet-chemically etching away Ti 3 C 2 from nanolaminated Ti 3 AuC 2 , initially formed by substituting Si in Ti 3 SiC 2 with Au. Ti 3 SiC 2 is a renown MAX phase, where M is a transition metal, A is a group A element, and X is C or N. Our developed synthetic route is by a facile, scalable and hydrofluoric acid-free method. The two-dimensional layers are termed goldene. Goldene layers with roughly 9% lattice contraction compared to bulk gold are observed by electron microscopy. While ab initio molecular dynamics simulations show that two-dimensional goldene is inherently stable, experiments show some curling and agglomeration, which can be mitigated by surfactants. X-ray photoelectron spectroscopy reveals an Au 4 f binding energy increase of 0.88 eV. Prospects for preparing goldene from other non-van der Waals Au-intercalated phases, including developing etching schemes, are presented.

analysis and synthesis phase of assembler

Similar content being viewed by others

analysis and synthesis phase of assembler

Self-assembly of N-heterocyclic carbenes on Au(111)

Alex Inayeh, Ryan R. K. Groome, … Alastair B. McLean

analysis and synthesis phase of assembler

Scalable high yield exfoliation for monolayer nanosheets

Zhuyuan Wang, Xue Yan, … Xiwang Zhang

analysis and synthesis phase of assembler

Gas-assisted transformation of gold from fcc to the metastable 4H phase

Shaobo Han, Guang-Jie Xia, … Jun Li

The discovery of graphene created great interest in two-dimensional (2D) materials 1 , but it is tricky to synthesize 2D materials comprised solely of metals. Gold nanoparticles are of interest due to their application in electronics, catalysis, photonics, sensing and biomedicine 2 . Recent advances have demonstrated that gold nanoparticle catalysts can turn plastic waste and biomass into value-added chemicals 3 , and photocatalytically drive overall water splitting and hydrogen peroxide production 4 . Anisotropic gold structures are a growing area of research with various low-symmetry allotrope structures that show unique properties compared to their bulk counterparts 5 . Plasmonic properties of gold nanoparticles vary depending on geometrical properties. Cluster Au 5–13 − anions 6 form planar molecules due to strong relativistic effects 7 that stabilize the outer 6 s shell and destabilize the 5 d shell. The planarity is attributed to the unique hybridization of the half-filled 6 s orbital with the fully occupied \(5{{d}}_{{{z}}^{2}}\) orbital 8 , 9 . Atomically thin 2D Au sheets are therefore expected to offer unusual plasmonic and electronic properties and to be potentially beneficial to photonic and medical applications such as solar energy harvesting and plasmonic photothermal therapies for cancer treatment 10 , 11 . Furthermore, the high surface-area-to-volume ratio and abundance of unsaturated atoms exposed on the surface, originating from its atomically thin 2D nature, would also contribute to enhanced catalytic properties and enrich design variation for various applications 12 . Additionally, the overall use of Au resources would be minimized due to the increase in surface-area-to-volume ratio for atomic sheets.

Inspired by the experimental realization of free-standing monolayer iron suspended in graphene pores, theoretical studies based on density-functional theory (DFT) and ab initio molecular dynamics (AIMD) predicted stable 2D Au membranes with or without confinement by graphene pores 13 , 14 , 15 , 16 , 17 , specifically, stable Au membranes suspended in graphene pores with diameters up to 20 nm. Notably, the DFT structural optimization indicated that the favoured 2D crystal would be of densely packed hexagonal structure that corresponds to the bulk monolayer of Au(111) face-centred cubic (fcc) lattice.

Epitaxial growth of single-crystal metal films has been demonstrated by numerous types of vapour deposition on lattice-matched substrates 18 . However, during deposition gold forms islands due to a strong thermodynamic tendency for coalescence. At best, this results in nanometre-thick continuous Au layers 19 . Unique synthetic routes of atomically thin gold sheets have been developed. For example, Wang et al. reported the synthesis of (001)-oriented gold nanosheets with a thickness of 0.2–0.4 nm, corresponding to 1–2-atom-thick layers diffused into a layered double-hydroxide template 20 . An attempt was made to isolate the gold sheets, but removal of the hydroxide matrix transformed the 2D Au structures into nanoparticles. Wang et al. fabricated single-atom-thick Au framed in bulk Au–Ag alloy by electron beam irradiation 21 . Similarly, Zhao et al. observed single-atom-thick Au nanoribbons suspended in graphene 22 . Bhandari et al. prepared single-atom-thick gold quantum dots stabilized on hexagonal boron nitride surfaces 23 that showed tuneable bandgaps, from 2.8 to 0.95 eV, depending on their size and shape, consistent with the DFT prediction. Forti et al. synthesized single-atom-thick Au layers, stabilized between SiC(0001) and a buffer zero-layer graphene via intercalation at elevated temperature 24 . Although both the large 2D and 3D clusters are expected to show more metallic properties as their size increases 25 and infinite free-standing Au is predicted to be metallic 15 , the intercalated Au monolayer showed semiconducting properties with the valence band maximum 50 meV below the Fermi level. Recently, Sharma et al. claimed to have realized goldene by thermal dewetting of thin Au films on sapphire substrates, albeit with likely multilayers from the appearance of high-resolution scanning transmission electron microscopy (HR-STEM) images and signatures from Au islands 26 . The state-of-the-art of the thinnest free-standing ‘2D’ gold, without physical confinements, is two-atom-thick gold nanosheets that are fabricated via a wet-chemical route using methyl orange, which suppresses the nanosheet thickness 12 . Yet, free-standing single-atom-thick 2D Au structures at the large scale have remained unrealized.

Here, we present a synthetic route to exfoliate goldene from Ti 3 AuC 2 , a nanolaminated MAX phase, where M is a transition metal, A is a group A element, and X is C or N, initially formed by substituting Si in Ti 3 SiC 2 with Au (ref. 27 ), by wet-chemically etching away the carbide slabs using Murakami’s reagent with cetrimonium bromide (CTAB) or cysteine. The developed method is facile, scalable and hydrofluoric acid-free. Goldene layers with roughly 9% lattice contraction compared to bulk gold are observed by electron microscopy. Despite an intrinsic 2D stability of goldene demonstrated by AIMD simulations, experiments show some curling and agglomeration, which can be mitigated by surfactants to stabilize goldene exfoliated from Au-intercalated MAX phases. X-ray photoelectron spectroscopy (XPS) reveals Au 4 f peak shifts to higher binding energy ( E b ) by 0.88 eV.

Results and discussion

Preparation of goldene.

Figure 1a–c shows cross-sectional HR-STEM images at 300 keV of exfoliated single-atom-thick 2D Au membranes, namely goldene, realized in this study (Supplementary Section 1 ). The 2D Au was achieved by etching away Ti 3 C 2 slabs from nanolaminated Ti 3 AuC 2 MAX-phase films by using alkaline potassium ferricyanide solution (Murakami’s reagent) together with CTAB and cysteine as stabilizers (Fig. 1d ). Etching without surfactants resulted in the formation of Au multilayers and clusters (Supplementary Section 2 ). M n +1 AX n phases ( n  = 1, 2, 3 or 4) are a set of intrinsically laminated ternary materials 28 . M is a transition metal, A is an element of groups 13–16 and X is carbon or nitrogen. MXene 2D ceramics are produced by etching away A layers from MAX phases, leaving M n +1 X n layers: most A elements are weakly bonded to the neighbouring M elements, while the M–X bonds are relatively strong 29 , 30 . Hydrofluoric acid is, for instance, used to selectively remove A elements from most MAX phases. Here, we invert this concept by using Murakami’s reagent to etch away MX layers and leave free-standing single-atom-thick A layers. With length scale normalization from well-defined Ti 3 AuC 2 lattice parameter values, we obtain Au–Au spacing of 2.62 Å in goldene (Supplementary Section 1 ), close to a calculated Au–Au bond length of 2.735 Å for an optimized closely packed 2D Au (Supplementary Section 3 ), which is roughly 9% smaller than the equilibrium interatomic distance in fcc gold (2.884 Å). Au–Au spacing values reported for subnanometre 2D Au are shorter than the typical equilibrium value found for high density and closely packed crystal structures (Supplementary Section 4 ) because the reduced 3D → 2D dimensionality strengthens in-plane bonding.

figure 1

a , Schematic atomic positions corresponding to a square in b , and HR-STEM image of Ti 3 AuC 2 along with [ \(11\bar{2}0\) ] orientation marked in b . Yellow, blue and black balls represent Au, Ti and C atoms, respectively. Scale bar, 5 Å. b , Cross-sectional HR-STEM image of Ti 3 AuC 2 , after etching by Murakami’s reagent with CTAB, where the original Ti 3 AuC 2 structure remains at the left side and goldene appears at the right side of the etching frontline. Scale bar, 5 nm. c , Zoomed-in partly twisted goldene after etching away Ti 3 C 2 slabs marked in b . Scale bar, 2 nm. d , Schematic illustration of the preparation of goldene.

To elucidate the 2D morphology of goldene, we acquired plan-view HR-STEM images at 60 keV of goldene sheets obtained by etching Ti 3 AuC 2 using 0.2% Murakami’s reagent with CTAB for 168 h (Fig. 2 ). The size of the goldene sheets varies from several nanometres to 100 nm. The goldene sheets are either free-floating or stack on each other, and get entangled without causing the coalescence that would result in the formation of gold nanoparticles (Fig. 2a ). This consolidates the efficacy of surfactants, which contribute to the stabilization of the goldene. Ordered patterns with 1.8–1.9 nm spans appear on goldene that subsides onto unetched residual Ti 3 AuC 2 or SiC substrate (Fig. 2b,c ). This is attributed to rippling of goldene, common to atomically thin materials 31 and comparable to ordered arrays of CTAB micelles on Au nanoparticles 32 in combination with rippling caused by the TEM sample preparation, as evaporating water causes the CTAB layer in between to shrink. The possibility of the 1.8–1.9 nm spacing in Fig. 2b being moiré effects between goldene sheets of different orientations or goldene on Ti 3 AuC 2 or SiC could be refuted (Supplementary Section 5 ). Figure 2c shows STEM energy-dispersive X-ray spectroscopy mapping of goldene sheets, demonstrating that the constituent element of the sheets is Au. Ti 3 C 2 MXene and Ti oxide residuals can also be seen due to the oxidizing etchant.

figure 2

a , HR-STEM image of goldene sheets that pile up on each other and get entangled. Scale bar, 30 nm. b , HR-STEM image of goldene sheets that subside onto the unetched residual Ti 3 AuC 2 , TiC seed layer below Ti 3 AuC 2 or SiC substrate. Scale bar, 10 nm. c , HR-STEM image and energy-dispersive X-ray spectroscopy elemental mapping of goldene nanosheets. Scale bars, 30 nm.

Electronic properties of goldene

To gain insight into electronic properties of goldene, we performed XPS measurements on a reference sputter-etched Au foil as well as on Ti 3 AuC 2 before and after etching with 0.2 and 0.5% Murakami’s reagent. Goldene sheets are produced using 0.2 and 0.5% Murakami’s reagent for 168 h. Figure 3 shows the corresponding Au 4 f , Ti 2 p and C 1 s core-level XPS spectra. The Au 4 f 7/2 peak from the reference Au film is located at 83.96 eV, in agreement with the reference value 33 . The full-width at half-maximum (FWHM) of the Au 4 f 7/2 peak is 0.62 eV. The Au 4 f emission for pristine Ti 3 AuC 2 (before etching) shows two Au 4 f doublets. The dominant doublet peaks assigned to Au atoms in the MAX phase are shifted towards a higher E b by 0.92 eV with respect to the lower E b pair that appears at the same E b as the reference Au. The latter doublet is due to the partially remaining capping Au layer on the top of Ti 3 AuC 2 after chemical–mechanical polishing (CMP). The E b shift of the Au 4 f peaks from Ti 3 AuC 2 is attributed to the electronic charge transfer from Au to the Ti 3 C 2 slabs. Such an E b shift due to charge transfer has previously been observed between Ti, Al and C atoms in Ti 3 AlC 2 and Ti 2 AlC MAX phases, for which the charge redistribution was of the same extent and direction as between Ti atoms and Al atoms in TiAl alloy 34 , 35 , 36 . The E b of the Au 4 f 2/7 XPS peaks from a Ti–Au alloy was reported to be 85 eV (ref. 35 ), similar to Ti 3 AuC 2 in this work (Fig. 3 ), which further strengthens our interpretation that the high E b doublet results from the negative charge transfer from the Au atoms to the Ti 3 C 2 slabs.

figure 3

Comparison of the Ti 2 p (left), C 1 s (middle) and Au 4 f (right) core-level spectra of the reference sputter-cleaned Au foil as well as on Ti 3 AuC 2 before and after etching by 0.2 and 0.5% Murakami’s reagent with CTAB: the reference sputter-cleaned Au foil (yellow), pristine Ti 3 AuC 2 (grey), goldene produced by etching Ti 3 AuC 2 with 0.5% Murakami’s reagent for 168 h (blue) and goldene produced by etching Ti 3 AuC 2 with 0.2% Murakami’s reagent for 168 h (red). For Ti 3 AuC 2 before and after etching by 0.2 and 0.5% Murakami’s reagent with CTAB in the Au 4 f spectra (right), hollow dots and solid lines represent experimental data and the sum of fitted peaks: Ti–Au in Ti 3 AuC 2 (grey), Au–Au in the remaining Au capping or Au particles (yellow) and Au–Au in goldene (green).

Source data

A possible contribution to the observed Au 4 f shift is the final state effect: the lower coordination number of Au atoms in the MAX phase than in the metallic fcc Au has a negative effect on the screening of the core-hole state left after the photoemission process 37 , 38 . Therefore, the kinetic energy of the electron escaping from the Au atoms in the MAX phase is reduced in comparison to that excited from metallic Au due to a stronger Coulomb interaction with the positively charged Au ion. The Au 4 f peaks from Ti 3 AuC 2 are also broader (FWHM = 1.10 eV versus 0.62 eV for bulk Au) due to shorter core-hole lifetimes.

The Au 4 f spectrum from goldene produced from Ti 3 AuC 2 after etching by 0.2 and 0.5% Murakami’s reagent shows two doublets. The more intense pair of peaks at the lower E b originate from residuals of the capping Au layer. The less intense doublet peaks assigned to 2D gold bonding in goldene are shifted towards a higher E b by 0.88 eV with respect to the more intense lower E b pair corresponding to the bulk Au. It is pertinent that the higher E b Au 4 f peaks originate from goldene and not from Ti 3 AuC 2 , as the MAX phase totally decomposes after etching. The latter is confirmed by the absence of carbidic peaks in the C 1 s and Ti 2 p spectra (Fig. 3 ). Despite the almost identical E b position of Au 4 f for goldene and Ti 3 AuC 2 , the contributions to the shift are different for goldene and Ti 3 AuC 2 .

Unlike the case of Ti 3 AuC 2 with both the charge transfer between Au and Ti and final state effects, the shift for goldene mainly originates from the final state effects in agreement with our DFT-simulated core-level shifts (Supplementary Section 6 ). While the coordination number of bulk fcc Au is 12, Au in Ti 3 AuC 2 forms six bonds with the surrounding Ti atoms and potentially six weaker lateral bonds with the surrounding Au atoms. Meanwhile, Au in goldene has only six or fewer lateral bonds with other Au with the shorter Au–Au distance than in the case of the bulk Au and Ti 3 AuC 2 . Thus, the enhanced final state effect in goldene results in the Au 4 f shift of the same magnitude as that observed for Ti 3 AuC 2 . The 0.88 eV shift to higher E b observed for goldene is smaller than shifts reported for oxidized Au species. For example, Au 4 f shift with respect to Au 0 ranges between 1.0 and 2.69 eV for Au 1–3+ (AuO, Au 2 O and Au 2 O 3 ); also, the shift reported for Au(OH) 3 is 2.1 eV (refs. 39 , 40 , 41 , 42 ). Therefore, it is unlikely that the observed Au 4 f peak shifts in the spectrum from goldene are due to Au oxidation.

AIMD for goldene

Next, we confirm the structural and dynamic stability of goldene, a monolayer of fcc Au(111), using AIMD (Supplementary Section 3 ). The dynamics of 2D defect-free goldene is followed for 5 ps at 300 K. The AIMD simulations attest the dynamic stability of the stoichiometric planar motif of goldene in the hexagonal triangular structure, consistent with previous ab initio calculations and simulations (Fig. 4 ) 15 . However, goldene layers produced by etching show curling up and blob formation near its etched-free edges (Fig. 1 and Supplementary Section 1 ). Thus, we further investigated the dynamic stability of goldene considering various structures and effects of point defects: (1) infinite goldene with Au adatoms, (2) unstrained and initially strained (tension and compression) goldene nanosheets with differently oriented edges, (3) goldene nanosheets with Au vacancies and Si impurities and (4) goldene bilayers (with and without defects) with various interlayer distances (Supplementary Sections 3.2 – 3.6 ). The simulations indicate stability and planarity of goldene nanosheets cut along and ‹112› edges, for which the calculated out-of-plane vibrational amplitudes are similar to that of an infinite defect-free goldene. On the other hand, the simulations suggest that Si impurities would distort the bond network to generate ripples in the layer if located near the edges of goldene. Conversely, Au vacancies have an indirect stabilization effect by acting as trapping sites for Si impurities. Small rippling is observed in the AIMD simulations for an isolated goldene monolayer, in agreement with the experimental observation here. However, the amplitude of the ripples increases as the interlayer distance becomes smaller, which is a manifestation of mutual attraction between Au layers. Geim and collaborators recently discovered that nano-rippling is typical in graphene due to thermal fluctuations and local mechanical strain 31 . Essentially, such rippling is inherent to atomically thin free-standing 2D materials and could be beneficial to chemical reactions. Accordingly, the rippling nature of 2D Au layers observed in our STEM analysis substantiates that they are free-standing. Thus, goldene is intrinsically stable regardless of its lineaments, and the curling and blob formation observed in our experiments could be attributed to external factors related to initial Au interaction into Ti 3 SiC 2 to produce Ti 3 AuC 2 and subsequent etching processes, such as electron radiation damage during 300 kV STEM imaging.

figure 4

Supercell model used in AIMD simulations at 300 K. The crystallographic axes are relative to an Au(111) monolayer. The length of visible Au–Au bonds is ≤3.6 Å.

Mechanistic consideration on exfoliation of goldene

We experimentally realized various forms of 2D Au layers by using different etching conditions (Supplementary Section 7 ). The alkaline solution of potassium ferricyanide consisting of 1 g of KOH, 1 g of K 3 [Fe(CN) 6 ] and 10 ml of H 2 O is conventionally called Murakami’s reagent, and this concentration is referred to as 100%. Using this concentration resulted in complete decomposition of Ti 3 AuC 2 into amorphous TiC and spherical Au nanoparticles; however, a 2D Au monolayer at the interface of 4H–SiC and Ti 3 AuC 2 survived the aggressive etching. Besides the etchant concentration, surfactants are essential to mitigate the coalescence of goldene layers and blob formation mediated by Au adatoms or Si impurities, as predicted by the AIMD simulation (Supplementary Section 3 ). Combining the lower concentration of 1–3% Murakami’s reagent with the usage of CTAB and cysteamine as surfactants, free-standing rippling membranes of two- and three-atom-thick 2D Au were fabricated from Ti 3 Au n C 2 ( n  = 2 and 3); here, blob formation at the edges of these exfoliated membranes was observed (Supplementary Section 7 ). The exfoliated 2D single-atom-thick Au, goldene (Fig. 1 and Supplementary Section 1 ), was achieved by using further lowered etchant concentrations of 0.2 and 1% Murakami’s reagent together with CTAB and cysteine. CTAB is a long molecule with a length of up to 20 Å; meanwhile, the distance between Au layers within Ti 3 Au n C 2 is 9.28 Å. Thus, CTAB can infiltrate the Au layers exposed after etching, only in parallel to Au layers, and would block the pathway for other CTAB to enter deeper. Cysteine and cysteamine have respective lengths below 9.28 Å, smaller than CTAB, and would more easily diffuse in between Au layers, although they would eventually block the pathways. Therefore, exfoliated 2D Au first appears at edges near the etching frontline.

A mild etching is crucial for goldene derivatives from Ti 3 Au n C 2 compounds: the lower the concentration is, the better the yield and quality of resulting Au layers are. This trend, however, ends with concentrations of around 0.2 and 0.5% Murakami’s reagent. The 0.1% concentration resulted in complete decomposition of 2D Au layers into 3D spherical nanoparticles, due to the lower concentration needing a much longer etching duration. The etchants would gradually attack the freed Au layers initially stabilized by surfactants as the radical nascent oxygen produced from the etchants eventually attacks the surfactants. Therefore, considering the balance of mildness and duration of etching, a concentration between 0.2 and 1% would be optimal for the Au layers to survive. The 0.2% Murakami’s reagent with CTAB allowed exfoliated 2D Au to persist, but the blob formation at the edge of the 2D Au progresses simultaneously. Further etching would advance the blob formation at the edges, and Au atoms of the blob diffuse laterally through the layer. Therefore, we observed gold layers becoming thicker after etching for long duration (Supplementary Section 7 ). A previous report demonstrated the free-standing two-atom-thick Au membranes where the main structure is fcc, but hexagonal close-packed reconstruction was observed at the edges 12 . This non-fcc feature has been found to stabilize planar Au structures 43 . Appropriate selection of etchant concentrations and smaller, more suitable surfactants would trigger such reconstruction of the exfoliated 2D Au edges and enable a higher yield of goldene.

Besides etchant concentrations and surfactants, a decisive factor for preparing goldene from a series of non-van der Waals Au-intercalated MAX phases is the interlayer distance between Au layers within the MAX lattice. Our AIMD simulations demonstrate that free-standing 2D Au layers coalesce in the presence of Si impurities or if brought to within 7 Å distance of each other. However, if the separation distance increases to 10, 12 and 14 Å, the goldene–goldene interlayer interaction decreases notably (Supplementary Section 3.1 ). The distance between Au layers within Ti 3 AuC 2 is 9.28 Å. Thus, instant interlayer interaction is expected without surfactants as soon as goldene layers are isolated from Ti 3 AuC 2 during etching. Here, we produced the Au-intercalated 413 MAX phases of Ti 4 AuC 3 from Ti 4 SiC 3 (Supplementary Section 8 ). The distance between Au layers within Ti 4 AuC 3 is about 12 Å. Therefore, a delay in goldene interactions after etching is expected, offering a prolonged grace period for surfactants to stabilize the goldene sheets against coalescence and thus a greater likelihood of preservation.

Conclusions

Goldene in the form of Au monolayer sheets is prepared by etching away Ti 3 C 2 slabs from Ti 3 AuC 2 . The precise dilution of Murakami’s reagent as an etchant and the appropriate use of passivating surfactants such as CTAB and cysteine are essential. Our developed processing scheme has potential for expansion of the goldene sheet area by means of etching and surfactant optimization. The template SiC(0001) wafer size that sets the area limit of growing epitaxial Ti 3 SiC 2 for subsequent Au intercalation is currently 200 mm (refs. 44 , 45 ), which would give an ample allowance for practical goldene application. The produced goldene has a strongly contracted in-plane (111) lattice spacing by roughly 9% and Au 4 f binding energy increase by around 0.88 eV, compared to bulk Au.

Ti 3 AuC 2 films preparation

Ti 3 SiC 2 films with a thickness of 60 nm were initially grown on 4H–SiC substrate via a single-step synthesis process 44 . The prepared Ti 3 SiC 2 films were transferred into another deposition chamber after being etched in buffered hydrofluoric acid (NH 3 F (25 g) + H 2 O (50 ml) + 48% hydrofluoric acid (10 ml)) for 5 s to remove residual oxides on the surface that may hinder the next step of Au interdiffusion. The films were covered with Au to a thickness of 200 nm using magnetron sputter deposition at room temperature. The Au-covered films were transferred into a quartz tube inserted in a tube furnace for annealing at 670 °C for 12 h. The furnace was heated up at a ramping rate of 18 °C min −1 . To avoid oxidation of the samples, nitrogen gas was flowed through the quartz tube during annealing. At the elevated temperature, an exchange reaction of Au on top with Si within the Ti 3 SiC 2 films takes place, forming Ti 3 AuC 2 , without destroying the original layered structure. The details of film preparation can be found elsewhere 27 .

Exfoliation of goldene

Before etching off Ti 3 C 2 slabs, the residual bulk Au with a thickness of up to 200 nm on the top of Ti 3 Au n C 2 was removed by CMP. CMP slurry was prepared by mixing fumed silica (2 g, Sigma-Aldrich), I 2 (1.2 g, Sigma-Aldrich), KI (12 g, Sigma-Aldrich), citric acid (16 g, Sigma-Aldrich) and trisodium citrate (3.7 g, Sigma-Aldrich) in 200 ml of deionized water; here, the concentration of chemicals was optimized, substantially increased compared to the original recipe to effectively etch the thick Au reservoir 46 . The mixture was subsequently sonicated for 1 h. The CMP was performed with a polishing system, Struers Tegramin-30, while the resulting CMP slurry was dripped onto a polishing cloth (Struers MD Chem; Supplementary Section 9 shows the detailed CMP process). Goldene was produced by etching the exposed Ti 3 AuC 2 films with 0.2–1.0% Murakami’s reagent with surfactants of CTAB or l -cysteine for 168 h (1 week), 1 month and 2 months (Supplementary Section 10 ).

The etching effect produced by the Murakami’s reagent originates from radical nascent oxygen [O] generated in the reaction occurring between potassium ferricyanide and alkali in close conjunction with metal carbides surface that has an attraction to oxygen 47 . When the surface is attacked by potassium ferricyanide K 3 [Fe(CN) 6 ] and KOH, the Ti 3 C 2 slabs withdraw the nascent oxygen from KOH on the slab surface, and the potassium left combines with potassium ferricyanide K 3 [Fe(CN) 6 ] to form potassium ferrocyanide K 4 [Fe(CN) 6 ] (ref. 47 ), according to the reaction:

Subsequently, the Ti 3 C 2 slabs are subject to the oxidative nascent oxygen as follows:

Here, ionization tendency and susceptibility to oxidation of Ti and C are considerably higher than those of Au. Thus, Ti and C are selectively oxidized by the nascent oxygen.

Au is inert to both potassium ferricyanide and its by-product of potassium ferrocyanide under the darkness; on the other hand, the light-triggered dissolution of Au by potassium ferrocyanide was observed 48 . Even ambient light could dissolve Au in the presence of potassium ferrocyanide. Haber first reported that light irradiation could release free cyanide from potassium ferrocyanide 49 and, later, the evolution of cyanide on light exposure was also demonstrated for potassium ferricyanide 50 . The cyanide solution can dissolve gold, known as the Elsner equation, and was conventionally used in gold mining industries. In this work, preparation of the Murakami’s reagent was conducted under minimum ambient light, and the etching was performed in complete darkness to avoid the evolution of cyanide that attacks Au. In summary, the susceptibility of Ti 3 C 2 slabs to oxidation is greater than that of Au, which is negligible under the dark condition of the etching in this work.

To hamper the coalescence of goldene layers and stabilize them, the Murakami’s reagent was mixed with various surfactants: CTAB, cysteine and cysteamine. CTAB comprises 16-carbon tails and an ammonium head group with three methyl groups and a common surfactant to tailor morphologies of Au nanoparticles. CTAB covers the Au surface as a bilayer that hinders the agglomeration of the Au nanoparticles. Cysteine and cysteamine are unique biosynthetic small molecules containing both amine and thiol functional groups. The thiols are used in a wide range of applications to stabilize and functionalize the planar gold surfaces 51 . Meanwhile, methyl and amine groups also have a strong affinity towards the Au surfaces 52 .

Cysteine, of which the thiol group attaches to the Au surface, is more inert to oxidation than cysteine that is further away from the Au. This is because the oxidation of cysteine takes place preferentially by taking away the hydrogen from the thiol group to form the disulfide cysteine. Thus, the nascent oxygen on the surface of carbides slabs would oxidize excess cysteine, which does not reach the Au surface, to form cystine. Similarly, excess cysteamine would also readily oxidize to form the disulfide cystamine by the nascent oxygen. These disulfide by-products are twice as large as cysteine and cysteamine, and there is less possibility of them diffusing in between the goldene layers during the etching of the intercalated MAX-phase host, although their affinity towards the Au surfaces would endure as the amine functional groups remain. Therefore, goldene layers were observed near the MAX edges where large surfactants can reach in between the Au layers.

Electron microscopy

Structural analysis was carried out by plan-view and cross-sectional HR-STEM with high angle annular dark field imaging using Linköping’s double CS-corrected FEI Titan 3 60–300 microscope operated at 60 and 300 keV. HR-STEM–high angle annular dark field imaging was performed using a 21.5 mrad probe convergence angle. The corresponding cross-sectional and plan-view samples were mechanically polished to a thickness of about 50 μm, followed by ion-beam milling with Ar + in a Gatan precision ion polishing system at 5 keV with a final polishing step at 0.8 keV of ion energy. To reduce excessive sample heating, the temperature of the sample holder was kept at about 100 K by liquid nitrogen during the ion-milling.

XPS analyses were performed in Axis Ultra DLD instrument from Kratos Analytical at a base pressure better than 1.1 × 10 −9  Torr (1.5 × 10 −7  Pa). Monochromatic Al Kα radiation ( hν  = 1,486.6 eV) was used with the anode power set to 150 W. All spectra were recorded at a normal emission angle. The analyser pass energy was 20 eV, which yielded a FWHM of 0.47 eV for the Ag 3 d 5/2 peak. The area analysed by XPS was a circle with a diameter of 100 μm. Spectrometer calibration was confirmed by measuring positions of Au 4 f 7/2 , Ag 3 d 5/2 and Cu 2 p 3/2 peaks from sputter-etched Au, Ag and Cu samples and comparison to the recommended ISO standards for monochromatic Al Kα sources 32 . All spectra were charge-referenced to the Fermi edge.

Simulations

AIMD simulations were carried out using the VASP code implemented with the projector augmented wave method 53 , 54 and the generalized-gradient electronic exchange and correlation approximation 55 . An average temperature of 300 K was controlled via the Nosé–Hoover thermostat (NVT ensemble). The classical equations of motion were integrated in time steps of 1 fs. Spin-orbit coupling and relativistic effects were neglected. The van der Waals interactions were modelled using Grimme’s approximation 56 . At each ionic step, the energy was calculated with accuracy of 10 –5  eV per supercell, using a 300 eV cut-off for the planewave basis set and Γ-point sampling of the reciprocal space. Detailed information on the AIMD simulations can be found in Supplementary Section 3 . Electronic structures were also calculated within the DFT framework and the projector augmented wave method. Free-standing goldene and Ti 3 AuC 2 were calculated using 29 × 29 × 3 k -points, while bulk Au was calculated with 29 × 29 × 29 k -points sampling of the Brillouin zone using a Monkhorst–Pack scheme 57 . The energy cut-off for plane waves included in the expansion of wave functions was 400 eV. The Au 4 f core-level shifts of free-standing goldene and Ti 3 AuC 2 were calculated according to the initial state approximation 58 , 59 , 60 (Supplementary Section 6 ).

Data availability

The data supporting the findings of this work are available within the article, the corresponding Supplementary Information and the public data repository figshare: https://doi.org/10.6084/m9.figshare.24584940 (ref. 61 ).

Shanmugam, V. et al. A review of the synthesis, properties, and applications of 2D materials. Part. Part. Syst. Charact . 39 , 2200031 (2022).

Li, N., Zhao, P. & Astruc, D. Anisotropic gold nanoparticles: synthesis, properties, applications, and toxicity. Angew. Chem. Int. Ed. 53 , 1756–1789 (2014).

Article   CAS   Google Scholar  

Miura, H. et al. Diverse alkyl–silyl cross-coupling via homolysis of unactivated C ( sp 3 )–O bonds with the cooperation of gold nanoparticles and amphoteric zirconium oxides. J. Am. Chem. Soc. 145 , 4613–4625 (2023).

Article   CAS   PubMed   Google Scholar  

Tada, H. Overall water splitting and hydrogen peroxide synthesis by gold nanoparticle-based plasmonic photocatalysts. Nanoscale Adv. 1 , 4238–4245 (2019).

Article   CAS   PubMed   PubMed Central   Google Scholar  

Hong, X., Tan, C., Chen, J., Xu, Z. & Zhang, H. Synthesis, properties and applications of one- and two-dimensional gold nanostructures. Nano Res. 8 , 40–55 (2015).

Goldsmith, B. R. et al. Two-to-three dimensional transition in neutral gold clusters: the crucial role of van der Waals interactions and temperature. Phys. Rev. Mater. 3 , 016002 (2019).

Pyykko, P. Relativistic effects in structural chemistry. Chem. Rev. 88 , 563–594 (1988).

Fernández, E. M., Soler, J. M., Garzón, I. L. & Balbás, L. C. Trends in the structure and bonding of noble metal clusters. Phys. Rev. B 70 , 165403 (2004).

Article   Google Scholar  

Häkkinen, H., Moseler, M. & Landman, U. Bonding in Cu, Ag, and Au clusters: relativistic effects, trends, and surprises. Phys. Rev. Lett. 89 , 033401 (2002).

Article   PubMed   Google Scholar  

Baffou, G., Cichos, F. & Quidant, R. Applications and challenges of thermoplasmonics. Nat. Mater. 19 , 946–958 (2020).

Graziano, G. All-plasmonic water splitting. Nat. Nanotechnol. 16 , 1053 (2021).

Ye, S. et al. Sub-nanometer thick gold nanosheets as highly efficient catalysts. Adv. Sci. 6 , 1900911 (2019).

Ono, S. Dynamical stability of two-dimensional metals in the periodic table. Phys. Rev. B 102 , 165424 (2020).

Koskinen, P. & Korhonen, T. Plenty of motion at the bottom: atomically thin liquid gold membrane. Nanoscale 7 , 10140–10145 (2015).

Yang, L.-M., Dornfeld, M., Frauenheim, T. & Ganz, E. Glitter in a 2D monolayer. Phys. Chem. Chem. Phys. 17 , 26036–26042 (2015).

Yang, L.-M., Ganz, A. B., Dornfeld, M. & Ganz, E. Computational study of quasi-2D liquid state in free standing platinum, silver, gold, and copper monolayers. Condens. Matt. 1 , 1 (2016).

Nevalaita, J. & Koskinen, P. Stability limits of elemental 2D metals in graphene pores. Nanoscale 11 , 22019–22024 (2019).

Campbell, C. T. Ultrathin metal films and particles on oxide surfaces: structural, electronic and chemisorptive properties. Surf. Sci. Rep. 27 , 1–111 (1997).

Norrman, S., Andersson, T., Granqvist, C. & Hunderi, O. Optical properties of discontinuous gold films. Phys. Rev. B 18 , 674 (1978).

Wang, L. et al. Two-dimensional gold nanostructures with high activity for selective oxidation of carbon–hydrogen bonds. Nat. Commun. 6 , 6957 (2015).

Wang, X., Wang, C., Chen, C., Duan, H. & Du, K. Free-standing monatomic thick two-dimensional gold. Nano Lett. 19 , 4560–4566 (2019).

Zhao, L., Ta, H. Q., Mendes, R. G., Bachmatiuk, A. & Rummeli, M. H. In situ observations of freestanding single‐atom‐thick gold nanoribbons suspended in graphene. Adv. Mater. Interfaces 7 , 2000436 (2020).

Bhandari, S. et al. Two-dimensional gold quantum dots with tunable bandgaps. ACS Nano 13 , 4347–4353 (2019).

Forti, S. et al. Semiconductor to metal transition in two-dimensional gold and its van der Waals heterostack with graphene. Nat. Commun. 11 , 2236 (2020).

Natarajan, G., Mathew, A., Negishi, Y., Whetten, R. L. & Pradeep, T. A unified framework for understanding the structure and modifications of atomically precise monolayer protected gold clusters. J. Phys. Chem. C 119 , 27768–27785 (2015).

Sharma, S. K., Pasricha, R., Weston, J., Blanton, T. & Jagannathan, R. Synthesis of self-assembled single atomic layer gold crystals-goldene. ACS Appl. Mater. Interfaces 14 , 54992–55003 (2022).

Fashandi, H. et al. Synthesis of Ti 3 AuC 2 , Ti 3 Au 2 C 2 and Ti 3 IrC 2 by noble metal substitution reaction in Ti 3 SiC 2 for high-temperature-stable Ohmic contacts to SiC. Nat. Mater. 16 , 814–818 (2017).

Lei, X. & Lin, N. Structure and synthesis of MAX phase materials: a brief review. Crit. Rev. Solid State Mater. Sci. 47 , 736–771 (2022).

Lim, K. R. G. et al. Fundamentals of MXene synthesis. Nat. Synth. 1 , 601–614 (2022).

Naguib, M. et al. Two‐dimensional nanocrystals produced by exfoliation of Ti 3 AlC 2 . Adv. Mater. 23 , 4248–4253 (2011).

Sun, P. et al. Unexpected catalytic activity of nanorippled graphene. Proc. Natl Acad. Sci. USA 120 , e2300481120 (2023).

Li, R. et al. Study on the assembly structure variation of cetyltrimethylammonium bromide on the surface of gold nanoparticles. ACS Omega 5 , 4943–4952 (2020).

International Organization for Standardization. Surface Chemical Analysis—X-ray Photoelectron Spectrometers—Calibration of Energy Scales. ISO 15472:2010 (ISO, 2020).

Näslund, L.-Å., Persson, P. O. & Rosen, J. X-ray photoelectron spectroscopy of Ti 3 AlC 2 , Ti 3 C 2 T z , and TiC provides evidence for the electrostatic interaction between laminated layers in MAX-phase materials. J. Phys. Chem. C 124 , 27732–27742 (2020).

Svanidze, E. et al. An itinerant antiferromagnetic metal without magnetic constituents. Nat. Commun. 6 , 7701 (2015).

Magnuson, M. et al. Electronic structure and chemical bonding in Ti 2 AlC investigated by soft x-ray emission spectroscopy. Phys. Rev. B 74 , 195108 (2006).

Wertheim, G., DiCenzo, S. & Youngquist, S. Unit charge on supported gold clusters in photoemission final state. Phys. Rev. Lett. 51 , 2310 (1983).

DiCenzo, S., Berry, S. & Hartford, E. Jr Photoelectron spectroscopy of single-size Au clusters collected on a substrate. Phys. Rev. B 38 , 8465 (1988).

de Anda Villa, M. et al. Assessing the surface oxidation state of free-standing gold nanoparticles produced by laser ablation. Langmuir 35 , 11859–11871 (2019).

Klyushin, A. Y., Rocha, T. C., Hävecker, M., Knop-Gericke, A. & Schlögl, R. A near ambient pressure XPS study of Au oxidation. Phys. Chem. Chem. Phys. 16 , 7881–7886 (2014).

Juodkazis, K., Juodkazyt, J., Jasulaitien, V., Lukinskas, A. & Šebeka, B. XPS studies on the gold oxide surface layer formation. Electrochem. Commun. 2 , 503–507 (2000).

Krozer, A. & Rodahl, M. X-ray photoemission spectroscopy study of UV/ozone oxidation of Au under ultrahigh vacuum conditions. J. Vacuum Sci. Technol. A 15 , 1704–1709 (1997).

Kondo, Y. & Takayanagi, K. Gold nanobridge stabilized by surface structure. Phys. Rev. Lett. 79 , 3455 (1997).

Fashandi, H. et al. Single-step synthesis process of Ti 3 SiC 2 ohmic contacts on 4H-SiC by sputter-deposition of Ti. Scr. Mater. 99 , 53–56 (2015).

Musolino, M. et al. Paving the way toward the world’s first 200mm SiC pilot line. Mater. Sci. Semicond. Process. 135 , 106088 (2021).

Miller, M. S., Ferrato, M.-A., Niec, A., Biesinger, M. C. & Carmichael, T. B. Ultrasmooth gold surfaces prepared by chemical mechanical polishing for applications in nanoscience. Langmuir 30 , 14171–14178 (2014).

Groesbeck, E. C. Metallographic Etching Reagents. Part III. For Alloy Steels (US Department of Commerce, Bureau of Standards, 1925).

Chen, W. D., Kang, S.-K., Stark, W. J., Rogers, J. A. & Grass, R. N. The light triggered dissolution of gold wires using potassium ferrocyanide solutions enables cumulative illumination sensing. Sens. Actuat. B 282 , 52–59 (2019).

Haber, F. Nachweis und Fällung der Ferroionen in der Wässerigen Lösung des Ferrocyankaliums. Z. Elektrochem. Angew. Phys. Chem. 11 , 846–850 (1905).

CAS   Google Scholar  

Yu, X., Peng, X. & Wang, G. Photo induced dissociation of ferri and ferro cyanide in hydroponic solutions. Int. J. Environ. Sci. Technol. 8 , 853–862 (2011).

Häkkinen, H. The gold–sulfur interface at the nanoscale. Nat. Chem. 4 , 443–455 (2012).

Abild-Pedersen, F. et al. Scaling properties of adsorption energies for hydrogen-containing molecules on transition-metal surfaces. Phys. Rev. Lett. 99 , 016105 (2007).

Kresse, G. & Joubert, D. From ultrasoft pseudopotentials to the projector augmented-wave method. Phys. Rev. B 59 , 1758–1775 (1999).

Kresse, G. & Furthmuller, J. Efficient iterative schemes for ab initio total-energy calculations using a plane-wave basis set. Phys. Rev. B 54 , 11169–11186 (1996).

Perdew, J. P., Burke, K. & Ernzerhof, M. Generalized gradient approximation made simple. Phys. Rev. Lett. 77 , 3865–3868 (1996).

Grimme, S. Semiempirical GGA‐type density functional constructed with a long‐range dispersion correction. J. Comput. Chem. 27 , 1787–1799 (2006).

Monkhorst, H. J. & Pack, J. D. Special points for Brillouin-zone integrations. Phys. Rev. B 13 , 5188 (1976).

Köhler, L. & Kresse, G. Density functional study of CO on Rh(111). Phys. Rev. B 70 , 165405 (2004).

Lizzit, S. et al. Surface core-level shifts of clean and oxygen-covered Ru (0001). Phys. Rev. B 63 , 205419 (2001).

Tal, A. A., Olovsson, W. & Abrikosov, I. A. Origin of the core-level binding energy shifts in Au nanoclusters. Phys. Rev. B 95 , 245402 (2017).

Kashiwaya, S. et al. Goldene —exfoliated single-atom-thick sheets of gold. figshare https://doi.org/10.6084/m9.figshare.24584940 (2024).

Download references

Acknowledgements

This work was supported by the Swedish Research Council project grant nos. 2017-03909 (L.H.), 2023-04107 (L.H.) and 2021-04426 (D.G.S.), Swedish Government Strategic Research Area in Materials Science on Functional Materials at Linköping University grant no. SFO-Mat-LiU 2009 00971 and the Wallenberg Scholar Program grant no. KAW 2019.0290 (L.H.). Simulations were carried out using the resources provided by the Swedish National Infrastructure for Computing and the National Academic Infrastructure for Supercomputing in Sweden (NAISS): partially funded by the Swedish Research Council through grant agreement nos. VR-2018-05973 and 2022-06725. S.K. acknowledges the MIRAI2.0 Joint seed funding. G.G. acknowledges support from the Åforsk Foundation grant no. 22-4, the Olle Engkvist foundation grant no. 222-0053 and the Carl Tryggers Stiftelse contract no. CTS 20:150. M.M. acknowledges financial support from the Swedish Energy Agency (grant no. 43606-1) and the Carl Tryggers Foundation (grant nos. CTS23:2746, CTS 20:272, CTS16:303, CTS14:310). J.R. acknowledges funding from the Göran Gustafsson Foundation for Research in Natural Sciences and Medicines. We thank V. Rogoz at Linköping University for contributing to the XPS measurements. Finally, we acknowledge the Wallenberg Initiative Materials Science for Sustainability funded by the Knut and Alice Wallenberg Foundation (KAW), as a source of inspiration during the final part of the study.

Open access funding provided by Linköping University.

Author information

Authors and affiliations.

Materials Design Division, Department of Physics, Chemistry and Biology (IFM), Linköping University, Linköping, Sweden

Shun Kashiwaya, Yuchen Shi & Johanna Rosen

Thin Film Physics Division, Department of Physics, Chemistry and Biology (IFM), Linköping University, Linköping, Sweden

Jun Lu, Grzegorz Greczynski, Martin Magnuson & Lars Hultman

Theoretical Physics Division, Department of Physics, Chemistry and Biology (IFM), Linköping University, Linköping, Sweden

Davide G. Sangiovanni

Division of Sensor and Actuator Systems, Department of Physics, Chemistry and Biology (IFM), Linköping University, Linköping, Sweden

Mike Andersson

You can also search for this author in PubMed   Google Scholar

Contributions

L.H. conceived and supervised the study. J.R., S.K. and L.H. designed the study. Implementation was made by S.K. (MAX-phase film growth, intercalation experiments, etching and surfactant protocols and STEM sample preparation), Y.S. (MAX-phase film growth, intercalation experiments and STEM sample preparation), M.A. (Au film growth), J.L. (STEM analysis), G.G. (XPS), M.M. (DFT-simulated XPS core-level shifts) and D.G.S. (AIMD simulations). S.K., Y.S., J.L., G.G., M.M. and D.G.S. performed the data analysis. S.K., L.H. and D.G.S. wrote the paper. All authors contributed to the final editing of the paper.

Corresponding authors

Correspondence to Shun Kashiwaya or Lars Hultman .

Ethics declarations

Competing interests.

The authors declare no competing interests.

Peer review

Peer review information.

Nature Synthesis thanks Kevin Critchley, Ivan Shtepliuk and the other, anonymous, reviewer(s) for their contribution to the peer review of this work. Primary Handling Editor: Alexandra Groves, in collaboration with the Nature Synthesis team.

Additional information

Publisher’s note Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Supplementary information

Supplementary information..

Supplementary Sections 1–11.

Supplementary Data 1

Source data for Supplementary Fig. 18.

Source Data Fig. 3

Source data for Fig. 3 XPS.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ .

Reprints and permissions

About this article

Cite this article.

Kashiwaya, S., Shi, Y., Lu, J. et al. Synthesis of goldene comprising single-atom layer gold. Nat. Synth (2024). https://doi.org/10.1038/s44160-024-00518-4

Download citation

Received : 16 April 2023

Accepted : 18 March 2024

Published : 16 April 2024

DOI : https://doi.org/10.1038/s44160-024-00518-4

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Quick links

  • Explore articles by subject
  • Guide to authors
  • Editorial policies

Sign up for the Nature Briefing newsletter — what matters in science, free to your inbox daily.

analysis and synthesis phase of assembler

  • Open supplemental data
  • Reference Manager
  • Simple TEXT file

People also looked at

Original research article, green synthesis of ( r )-3-hydroxy-decanoic acid and analogs from levoglucosenone: a novel access to the fatty acid moiety of rhamnolipids.

www.frontiersin.org

  • 1 Institut de Chimie Moléculaire de Reims, UMR 7312, SFR Condorcet FR CNRS 3417, Université de Reims Champagne Ardenne, Reims, France
  • 2 URD Agro-Biotechnologies Industrielles (ABI), CEBB, AgroParisTech, Pomacle, France

Rhamnolipids (RLs) are highly valuable molecules in the cosmetic, pharmaceutic, and agricultural sectors with outstanding biosurfactant properties. In agriculture, due to their potential to artificially stimulate the natural immune system of crops (also known as elicitation), they could represent a critical substitute to conventional pesticides. However, their current synthesis methods are complex and not aligned with green chemistry principles, posing a challenge for their industrial applications. In addition, their bioproduction is cumbersome with reproducibility issues and expensive downstream processing. This work offers a more straightforward and green access to RLs, crucial to decipher their mechanisms of action and design novel potent and eco-friendly elicitors. To achieve this, we propose an efficient seven-step synthetic pathway toward ( R )-3-hydroxyfatty acid chains present in RLs, starting from cellulose-derived levoglucosenone, with Michael addition, Baeyer–Villiger oxidation, Bernet–Vasella reaction, and cross-metathesis homologation as key steps. This method allowed the production of ( R )-3-hydroxyfatty acid chains and derivatives with an overall yield ranging from 24% to 36%.

Introduction

Rhamnolipids (RLs) are glycolipidic biosurfactants composed of two key moieties: L-rhamnose unit(s) as hydrophilic head and a 3-(hydroxyalkanoyloxy)-alkanoic acid (HAA) fatty acid tail ( Figure 1 ). The variations in this core structure allow the categorization of RLs into four main subgroups, called congeners: the mono-rhamno-mono-lipidic, the mono-rhamno-di-lipidic, the di-rhamno-mono-lipidic, and the di-rhamno-di-lipidic ones ( Abdel-Mawgoud et al., 2010 ). Within these congeners, the RLs are described with regard to the length of the HAAs, providing a wide range of molecules with various highly valuable properties for many industrial applications. Indeed, the increasing interest in these molecules has made them serious competitors to synthetic surfactants in numerous industrial sectors, such as oil recovery ( Rahman et al., 2003 ; Costa et al., 2010 ), therapeutics ( Magalhães and Nitschke, 2013 ), cosmetics ( Piljac and Piljac, 1999 ), cleaners ( Parry et al., 2013 ), and agriculture ( Sachdev and Cameotra, 2013 ; Miao et al., 2015 ; Dashtbozorg et al., 2016 ), with spectacular “eco-friendly” properties ( e.g. , biosourced, biocompatibility, biodegradability, and biostimulant activity) ( Randhawa and Rahman, 2014 ). In addition, RLs have shown tremendous potential for academic studies dealing with the activation of crop immunity, a novel alternative to pesticides ( Schellenberger et al., 2021 ). They are commonly found in various bacterial species, which makes them recognizable by the plant as a pathogen signal, triggering an immune response in planta . This eliciting property, characteristic of microbe-associated molecular patterns (MAMPs) and pathogen-associated molecular patterns (PAMPs), has great potential for future crop management ( Héloir et al., 2019 ). Nevertheless, the origin of this eliciting property is still unsettled and requires assays with analogous molecules to better unveil the chemical function responsible for these promising properties. Hence, the development of straightforward, high-yielding, and sustainable synthetic pathways toward RLs and analogs is not only a great tool for academic research purposes but also for the production of potential agrochemicals for pest control.

www.frontiersin.org

Figure 1 . General structure of rhamnolipids.

The chemical synthesis of RLs is challenging, and synthetic routes reported in the literature lack diversity with only a few methods and starting materials ( Bauer and Rademann, 2005 ; Bauer et al., 2006 ; Coss et al., 2012 ; De Vleeschouwer et al., 2014 ; Menhour et al., 2015 ; Menhour et al., 2016 ; Palos Pacheco et al., 2017 ; Compton et al., 2020 ; Cloutier et al., 2021 ). The method by Bauer et al., called hydrophobically assisted switching phase (HASP) synthesis, allows the production of a wide range of rhamnolipids but requires the independent total synthesis of each HAA, making the preparation of analogs cumbersome ( Scheme 1 ). ( Bauer and Rademann, 2005 ; Bauer et al., 2006 ) In addition, although elegant, this methodology suffers from important quantities of toxic solvents ( e.g. , methanol and chloroform) and atom-consuming protection/deprotection sequences, although it remains the most widely used methodology ( Coss et al., 2012 ; De Vleeschouwer et al., 2014 ; Palos Pacheco et al., 2017 ; Cloutier et al., 2021 ). The synthesis of ( R )-3-hydroxy-alkanoic acids was also reported by Jaipuri et al. (2004). Although the overall yield was quite good (38%, six steps), synthetic steps required the use of toxic reagents and solvents, as well as a restrictive setup ( i.e. , cooling at 0 or −78°C and microwave activation). In 2020, Compton et al. (2020) synthesized racemic 3-hydroxy decanoic acid using Reformatsky condensation.

www.frontiersin.org

Scheme 1 . Synthetic strategies developed by Bauer et al. and Menhour et al. to synthesize HAAs ( Bauer et al., 2006 ; Menhour et al., 2015 ).

We have previously published articles focusing on (di-)lipidic HAAs synthesis starting from an acetoxyester ( Scheme 1 ) ( Menhour et al., 2015 ; Menhour et al., 2016 ). This compound is generated in two steps: 1) the condensation of acrolein with tert -butyl acetate leading to the racemic tert -butyl 3-hydroxypent-4-enoate and 2) the subsequent PS Amano lipase-biocatalyzed enantioselective acetylation ( Dulęba et al., 2020 ). Using this valuable starting material and cross-metathesis, a library of HAAs has been synthesized from this unique precursor. Although an unusual Mitsunobu reaction has allowed the creation of di-lipidic structures, this synthesis requires further development to comply with the green chemistry principles. For instance, it would be more attractive if a biosourced starting material was used.

To address the aforementioned considerations, the work reported herein aims to develop a novel green synthetic pathway toward the HAA of RLs and analogs starting from levoglucosenone ( LGO 1 , Figure 2 ), a chiral biosourced synthon that can be obtained from cellulosic wastes through a catalytic aerobic fast pyrolysis approach (CFP), such as the Furacell™ process developed by Circa Group ® ( Court et al., 2012 ). LGO is recognized as a highly valuable chemical due to 1) the preservation of some natural chiral centers of cellulose and 2) the α,β-unsaturated ketone and masked aldehyde functionalities that open the way to a wide range of synthetic strategies. The proposed seven-step retrosynthetic pathway is described in Figure 2 . The flexibility of this methodology will efficiently provide a library of analogs that could be involved in the HASP process and, thus, the possibility of establishing structure/activity relationships (SARs).

www.frontiersin.org

Figure 2 . Retrosynthetic strategy designed and optimized in this work.

Advantageously, the natural chirality of LGO (chiral pool) allows obtaining 3-hydroxy-fatty acids with the desired ( R )-configuration without the use of enantioselective reactions ( Figure 2 ). Carefully chosen strategies will be explored to achieve good yields and limit protection/deprotection steps.

Results and discussion

Step 1: oxa-michael addition.

As previously reported by Diot et al., the oxa-Michael addition of water onto LGO occurred in exo with total selectivity to form hydrated levoglucosenone 2a in 75% yield (estimated with 1 H NMR experiments) ( Diot-néant et al., 2021 ). Approximately 10% of LGO remains in the crude mixture, along with 10% of a side product coming from LGO cross-coupling. Compound 2a can be purified by flash chromatography over silica gel, leading to a 62% isolated yield. Alternatively, the two by-products can also be partially removed through extraction. Indeed, these undesired components are more soluble in an organic solvent, herein ethyl acetate, than in water. In contrast, 2a, being more hydrophilic, remains mainly in the aqueous layer. Through this extraction, 2a was recovered in a 75% yield, and its purity was increased from 75% to 94% (determined by 1 H NMR), which was high enough to avoid the purification step ( Scheme 2 ).

www.frontiersin.org

Scheme 2 . Synthesis of the 5 series from LGO .

For benzyl series b , the oxa-Michael addition of benzyl alcohol onto LGO following the conditions described by Kawai et al. gave 2b in a 94% yield ( Kawai et al., 1995 ). As this step requires a large excess of benzyl alcohol (38 equiv.), the recyclability of benzyl alcohol was investigated to limit the ecological footprint. Interestingly, more than 98% of unreacted benzyl alcohol could be recovered through a short-path distillation (also known as molecular distillation).

The addition of ethanol to LGO was reported by Sharipov et al. (2019) . However, we did not succeed in reproducing the 70% yield announced by Sharipov and co-workers using their conditions (0.5 equiv. Et 3 N, [ LGO ] = 77 mmol.L −1 in ethanol, 36 h, r.t.). To increase the yield further, a Design of Experiments (DoE) was performed on two factors: 1) concentration ranging from 0.08 to 0.5 mol.L −1 , and 2) equivalence of Et 3 N varying between 0.5 and 2, over 72 h ( Supplementary Section S3 ). To achieve the best HPLC yield (86%), the most diluted conditions (0.08 mol.L −1 ) with the highest amount of Et 3 N (2 equiv.) were required. Purification over silica gel was performed to fully recover 2c in high yield (86%) and purity ( Scheme 2 ).

Step 2 : Baeyer–Villiger oxidation

An organic solvent-free H 2 O 2 -mediated Baeyer–Villiger oxidation followed by an Amberlyst-catalyzed ethanolysis was performed on the 2 series ( Allais et al., 2018 ; Bonneau et al., 2018 ) ( Scheme 2 ).

In this step, 2a , 2b , or 2c and hydrogen peroxide were fully consumed, and Amberlyst beads were filtered off. Moreover, due to their low boiling point, formic acid by-products and solvents ( i.e. , ethanol and water) were readily removed under vacuum. Consequently, purification over silica gel was not required, and the desired 3a , 3b, and 3c were obtained in excellent yields (>99%, 93%, and 97%, respectively).

Step 3: activation (and protection)

The primary and secondary alcohols of 3a were then activated and protected by tosylation and acetylation, respectively, through a one-pot two-step procedure. A small excess of tosyl chloride was required to warrant the total conversion of 3a and limit residual reagent in the medium after extraction of 4a (77% overall yield without requiring purification over silica gel). To achieve 4d , the direct addition of acetic anhydride into the medium was performed, resulting in a global yield of 77%, meaning a quantitative acetylation of the tosylated intermediate ( Scheme 2 ).

Activation of the primary alcohol of the lactone 3b proved to be more difficult than activation of the unprotected 3a . Indeed, the tosylation step never reached completion even with a longer reaction time (24 h instead of 2 h), higher dilution (0.5 mol.L −1 instead of 1 mol.L −1 ), or with the use of a co-solvent (1 mol.L −1 in Cyrene ® , with 3 equiv. of pyridine). The tosylated product 4b was isolated after purification over silica gel with a maximum of 50% yield. As mechanochemical tosylation was described in the literature as an alternative sustainable methodology ( Kazemi et al., 2007 ), an assay in a mortar led to a slight increase in conversion from 50% to 77%, as determined by 1 H NMR. However, although trials performed in a ball grinder showed complete conversion of the starting material, the degradation of the desired product was observed. Thus, mesylation was attempted under solvent conditions, and TLC monitoring of the reaction revealed a total conversion of the starting material after only 2 h. After treatment, an 88% yield of the desired product 4e was isolated without the need for a specific purification step ( Scheme 2 ). Successful activation of the primary alcohol of the lactone 3c was achieved by tosylation under the same conditions as previously described, leading to 4c in a 74% yield ( Scheme 2 ).

Steps 4 and 5: iodination and Bernet–Vasella reaction

Tosylated 4d was then substituted by an iodine in the presence of sodium iodide, and subsequently, a Bernet–Vasella reaction was performed to provide the fully deprotected carboxylic acid with excellent yields ( Bernet and Vasella, 1979 ) ( Scheme 2 ). Interestingly, Wang and Nugent (2007) have previously reported a one-pot, two-step iodination and Bernet–Vasella procedure. Following their strategy, the one-pot two-step procedure led to an even higher global crude yield ( e.g. , 98% vs. 78% for the two steps). The Bernet–Vasella reaction was commonly performed in THF, a highly toxic solvent ( Florent et al., 1987 ). At least one example reported using green n- propanol as the solvent ( Aspinall et al., 1984 ). Unfortunately, compounds of the 4 series proved poorly soluble in n- propanol. Alternatively, the bio-based cyclopentyl methyl ether (CPME), a green substituent of THF, has been used successfully for the conversion of 4d . However, the final procedure used acetone as the solvent instead of CPME, as the latter proved to be a poor solvent for 4b . Excellent crude yields were achieved for 5a , 5b, and 5c (91%, 95%, and 98%, respectively). Note that the workup of the Bernet–Vasella reaction, consisting of filtration over a Celite ® pad and extraction, led to the 5 series with very few impurities. Nevertheless, purification over silica gel can be performed to obtain pure 5a , 5c, and 5d in 55%, 78%, and 89% yields, respectively ( Scheme 2 ). The highly hydrophilic 5a would require alternative purification technology than flash chromatography over silica gel.

Step 6: cross-metathesis homologation

With the different compounds in hand, the elongation of the fatty acid chain was investigated using cross-metathesis. This methodology allows the introduction of various chain lengths starting from the same precursor. However, because ( R )-3-hydroxydecanoic acid has recently been reported as a very powerful elicitor, we will focus on the C-10 chain length ( Schellenberger et al., 2021 ).

Various conditions (catalyst loading and addition of catalyst by portions or through syringe pump, in dry CPME or methylene chloride, with different concentrations) have been tested for Grubbs II-catalyzed cross-metathesis reactions between pure 5d and hept-1-ene ( Scheme 3 ; Table 1 ). Grubbs II catalyst has been chosen due to its high stability to air and humidity, allowing simpler handling, in addition to its high efficacy in catalyzing the metathesis reaction. In all cases, a catalytic amount of copper(I) iodide was added to the medium as it was proved to have a beneficial effect on the yield of olefin cross-metathesis ( Voigtritter et al., 2011) . The continuous addition of 4.8 mol% of Grubbs II catalyst through a syringe pump has led to the best yield in 6d (62%, Table 1 , entry 6), similar to what was reported by Menhour et al. (65%) ( Menhour et al., 2016 ). Note that the starting material was not fully consumed. Unfortunately, its recovery was not possible due to the concomitant elution of a contaminating by-product. A tentative structure elucidation based on the 1 H, 13 C, and 2D spectra led to compound 10 ( Figure 3 ).

www.frontiersin.org

Scheme 3 . Synthesis of the 9 series through a cross-metathesis reaction and hydrogenation.

www.frontiersin.org

Table 1 . Summary of the cross-metathesis reactions on 5d with hept-1-ene.

www.frontiersin.org

Figure 3 . Hypothetical structure for the by-product 10 isolated with 5d .

Cross-metathesis between 5b and hept-1-ene was performed following the best conditions obtained for 5d ( Table 1 , entry 6), leading to 6b in a 47% yield ( Scheme 3 ). Decreasing the catalyst loading by two-fold caused only a slight decrease in yield (41%), but increasing the concentration to 0.25 mol.L −1 was more influential with a drop of 12 points and 15 points in yield with Grubbs II catalyst loading of 4.8 mol% and 2.4 mol%, respectively. It is worth mentioning that the hydrogenation was not performed directly after the cross-metathesis to allow the recovery of starting material 5b . This was possible for the diluted media ( i.e. , 0.1 mol.L −1 ), and ca. 40% of the starting material was recovered without any detectable by-product, whereas in more concentrated experiments, a small amount of the same kind of impurity as for 5d was observed by 1 H NMR analysis. When using 5a , contrary to what was observed from studies on 5d and 5b , reducing the amount of catalyst led to a higher yield of 6a (from 24% to 46%). After purification, 60% of the desired compound 6c and 38% of starting material 5c were recovered.

To investigate the influence of the presence of the free carboxylic acid on the cross-metathesis reaction, benzylation of the 5 series was performed, leading to the 7 series, followed by cross-metathesis with hept-1-ene ( Scheme 3 ). Cross-metathesis of the protected ester 7a provided a higher yield ( 8a , 59%) than the free carboxylic acid 5a ( 6a , 46%). In contrast, 8d was only obtained in a 38% yield, and 53% of the starting material 7d was recovered, whereas 6d reached a 62% yield from 5d .

The cross-metathesis yields reported in this article are consistent with values reported in the literature for similar reactions ( Menhour et al., 2016 ). The presence of a free carboxylic acid group does not seem to highly impact the reactivity of the Grubbs II catalyst, as no clear trend was observed by comparison with unprotected versus benzylated esters. Increasing the concentration from 0.1 to 0.25 mol.L −1 also has a predominantly positive effect on yields. The presence of an alcohol moiety in position 3 and a bulky group (benzyl) have a negative impact on the yields, which did not exceed 50%. In comparison, smaller substituents ( i.e. , acetyl and ethyl) allowed 60% yields to be achieved.

Step 7: hydrogenation

Finally, a palladium-catalyzed hydrogenation is required to achieve the synthesis of HAAs. Whereas the reduction of the double bond was completed overnight in all cases, removing the 3- O -benzyl moiety proved more challenging. However, this drawback allowed achieving the unexpected analog 9b in a 72% yield. Acetic acid was added to the ethanolic reaction medium to successfully achieve complete benzyl cleavage. All reactions proceeded with yields higher than 95%.

Compliance with green chemistry

First, LGO was chosen as the starting material not only because it is a biosourced chemical but also because it is obtained through flash-pyrolysis of cellulosic wastes through the Furacell process™, an energy-neutral approach ( Circa group et al., 2023 ). Second, particular attention was focused on the nature of the solvents and their quantity. Indeed, no halogen-containing solvent was used, and toxic diethyl ether was replaced by CPME, which is characterized by a low formation of peroxide, a high boiling point (106°C), and renewable resource sourcing ( Merck, 2019 ). In addition, acetone, ethyl acetate, benzyl alcohol, and ethanol can be produced from renewable feedstocks ( Weizmann and Rosenfeld, 1937 ; Pattanaik and Mandalia, 2011 ; Redl et al., 2017 ; Liu et al., 2020 ; Flaiz et al., 2021 ; Melendez et al. 2022 ). Whenever possible, organic solvents were avoided ( e.g. , STEP 2), or the substrate concentration was as high as 1 mol.L −1 to reduce their consumption (STEPS 3–5). It is worth mentioning that, in the case of benzyl alcohol, its recyclability was successfully achieved through a short-path distillation. To further comply with the principles of green chemistry, toxic reagents were avoided whenever possible. For example, a two-step procedure (tosylation followed by iodination) was preferred to the more direct Appel reaction to avoid the use of the toxic triphenylphosphine and limit waste ( i.e. , triphenylphosphine oxide). Finally, the synthetic pathway described herein requires a minimum of purification steps ( i.e. , chromatography over silica) to access the desired compounds. Indeed, over seven steps ( i.e. , oxa-Michael addition, Baeyer–Villiger oxidation, activation, iodination, Bernet–Vasella reaction, cross-metathesis, and hydrogenation), only two to three purifications over silica gel were required depending on the targeted product. The key purification was systematically performed after the cross-metathesis homologation to remove by-products and recover both the desired product and the starting material.

The ecological performance of each step has been calculated using green metrics to assess their impact. Several methods exist to determine such metrics ( Van Aken et al., 2006 ). Among them, a very simple one is the process mass intensity (PMI) ratio, which establishes a ratio between the summed masses of all products entering into a reaction (water excepted) and the mass of recovered target(s). EcoScale, another approach designed by Van Aken et al., evaluates six criteria ( i.e. , yield, price, safety, technical setup, temperature/time, and workup/purification) and gives penalty points deduced from a starting score of 100 ( Van Aken et al., 2006 ). This method has been specifically designed for laboratory scale and allows ranking the reactions in three categories: 1) >75, excellent; 2) >50, acceptable; and 3) <50, inadequate. Combining these two methods led to an overview in terms of waste generation and the safety/difficulty of each reaction without performing complex calculations, as in the case of an in-depth life cycle assessment (LCA). PMI and EcoScale scores were calculated for each step of the process to evaluate which pathway was the eco-friendliest. It is important to mention that the PMI calculations did not consider treatment after the reaction due to the lack of information in the literature on the volume of solvents used during extraction and purification procedures.

For our process ( Supplementary Table S6.1 ), all PMI ratios were significantly low (<15), except for the cross-metathesis step (between 31 and 72), particularly due to the high dilution (C = 0.1 mol.L −1 ). Indeed, when the concentration was increased from 0.1 to 0.25 mol.L −1 for the conversion of 7b into 8b , the PMI ratio was logically divided 2.5-fold, leading to a very acceptable value. Moreover, recyclability through distillation of CPME (bp 106°C) and unreacted hept-1-ene (bp 93°C) was not addressed here but could be considered an appreciable improvement. Whatever the synthetic strategy chosen, the average PMI ratio is less than 20, which is very good for the synthesis of a fine chemical. Generally speaking, our approach results in high to excellent EcoScale values for most steps thanks to the safety of reactants, the simplicity of treatments, the few purifications, and the good to excellent yields. One notable exception is the cross-metathesis homologation. Indeed, the moderate yields of these reactions, in addition to the use of an expensive catalyst and toxic hept-1-ene, led to inadequate reaction conditions following Van Aken’s definition. Overall, our seven-step synthetic pathway reaches acceptable conditions with average EcoScale scores above 60 ( Table 2 ).

www.frontiersin.org

Table 2 . Average PMI and EcoScale scores for the various pathways explored in this work compared with Bauer’s and Menhour’s procedures.

Surprisingly, pathways involving the benzyl protection achieved better PMI ratios than the direct route. That can be mainly explained by the increase in yield for the cross-metathesis homologation in the alcohol series ( 7a compared to 5a ) and the high recovery of the starting material in the acetyl series ( 7d compared to 5d ). However, the impact on the average EcoScale score is slightly negative for the acetyl derivatives; the score is more impacted for the alcohol derivatives ( Table 2 ).

In order to assess the ecological performance of the developed process, the aforementioned EcoScale and PMI results were benchmarked against those of the already published research works.

Even though Bauer and co-workers have used toxic solvents such as chloroform, methylene chloride, or methanol ( Bauer et al., 2006 ), their EcoScale score remains acceptable to good due to the high yields of each reaction step (>78%), few purification steps, and easy setup (except for the selective hydrogenation) and workups. However, the PMI ratio shows that this synthetic methodology generates an unreasonable amount of waste, especially during the desilylation, although the latter was carried out at a multigram scale ( Table 2 ).

With Menhour et al.’s strategy ( Supplementary Table S6.3 ) ( Menhour et al., 2016 ), the PMI ratio remains acceptable as long as the reactions were performed on a “convenient” scale but drastically increases when performed on 1 mmol (cross-metathesis followed by hydrogenation), and even more on 0.1 mmol (deprotection). This shows the importance of working in concentrated conditions to limit the environmental footprint, which becomes more and more difficult when the scale is reduced. In contrast, the EcoScale score was poor for the three first steps due to toxic solvents and reagents ( e.g. , diethyl ether and acrolein) and low yield ( i.e. , enantioselective acetylation), whereas good values were achieved for the two last steps.

To summarize, considering PMI and EcoScale scores, even with more steps, our synthetic procedure remains more sustainable than the previously reported procedures. The desired HAAs were obtained with global yields ranging from 24% to 36%. The implementation of this new pathway is very easy (common setup and materials, no need for anhydrous solvent, etc.) and has been conducted on a (multi)gram scale. The synthetized HAAs could be used directly in biological assays to evaluate their impact on stimulating plant immune systems. They could also be used in the HASP developed by Bauer et al. to achieve functionalized rhamnolipids.

Data availability statement

The original contributions presented in the study are included in the article/ Supplementary Material , further inquiries can be directed to the corresponding authors. In addition, NMR FID raw files can be found at DOI: 10.57745/D1G0IK .

Author contributions

EP: data curation, formal analysis, investigation, and writing–original draft. AF: conceptualization, data curation, formal analysis, investigation, methodology, writing–original draft, and writing–review and editing. M-CB: formal analysis, supervision, and writing–review and editing. SC: formal analysis, supervision, and writing–review and editing. FBi: data curation, formal analysis, and writing–review and editing. FBo: data curation, formal analysis, and writing–review and editing. AP: methodology, writing–original draft; FA: conceptualization, funding acquisition, methodology, project administration, resources, supervision, validation, visualization, writing–original draft, and writing–review and editing. AH: conceptualization, data curation, funding acquisition, methodology, project administration, resources, supervision, validation, visualization, writing–original draft, and writing–review and editing.

The authors declare that financial support was received for the research, authorship, and/or publication of this article. The authors want to acknowledge SFR Condorcet for financial support (LEGO grant). URD ABI thanks Grand Reims, Région Grand Est, and Conseil Général de la Marne for financial support.

Acknowledgments

The authors want to acknowledge Anne Wadouachi and Chloé Herrlé from LG2A, UMR CNRS 7378, UPJV for performing mechanochemistry assays.

Conflict of interest

The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.

The authors declared that they were an editorial board member of Frontiers, at the time of submission. This had no impact on the peer review process and the final decision.

Publisher’s note

All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors, and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.

Supplementary material

The Supplementary Material for this article can be found online at: https://www.frontiersin.org/articles/10.3389/fchem.2024.1362878/full#supplementary-material

Abdel-Mawgoud, A. M., Lépine, F., and Déziel, E. (2010). Rhamnolipids: diversity of structures, microbial origins and roles. Appl. Microbiol. Biotechnol. 86 (5), 1323–1336. doi:10.1007/s00253-010-2498-2

PubMed Abstract | CrossRef Full Text | Google Scholar

Allais, F., Bonneau, G., Peru, A. A. M., and Flourat, A. L. (2018). Method for converting levoglucosenone into 4-hydroxymethyl butyrolactone or 4-hydroxymethyl butenolide without using any organic solvent and catalyst. https://patents.google.com/patent/WO2018007764A1/en .

Google Scholar

Aspinall, G. O., Chatterjee, D., and Khondo, L. (1984). The hex-5-enose degradation: zinc dust cleavage of 6-Deoxy-6-Iodo-a-D-Galactopyranosidic linkages in methylated di- and trisaccharides. Can. J. Chem. 62, 2728–2735. doi:10.1139/v84-464

CrossRef Full Text | Google Scholar

Bauer, J., Brandenburg, K., Zähringer, U., and Rademann, J. (2006). Chemical synthesis of a glycolipid library by a solid-phase strategy allows elucidation of the structural specificity of immunostimulation by rhamnolipids. Chem. - A Eur. J. 12 (27), 7116–7124. doi:10.1002/chem.200600482

Bauer, J., and Rademann, J. (2005). Hydrophobically assisted switching Phase synthesis: the flexible combination of solid-phase and solution-phase reactions employed for oligosaccharide preparation. J. Am. Chem. Soc. 127 (20), 7296–7297. doi:10.1021/ja051737x

Bernet, B., and Vasella, A. (1979). Carbocyclische Verbindungen aus Monosacchariden. I. Umsetzungen in der glucosereihe. Helv. Chim. Acta 62 (204), 1990–2016. doi:10.1002/hlca.19790620629

Bonneau, G., Peru, A. A. M., Flourat, A. L., and Allais, F. (2018). Organic solvent- and catalyst-free Baeyer–Villiger oxidation of levoglucosenone and dihydrolevoglucosenone (Cyrene®): a sustainable route to ( S )-γ-hydroxymethyl-α,β-butenolide and ( S )-γ-hydroxymethyl-γ-butyrolactone. Green Chem. 20 (11), 2455–2458. doi:10.1039/c8gc00553b

Circa group, , 2023, Furacell process . Circa group , Norway ,

Cloutier, M., Prévost, M.-J., Lavoie, S., Feroldi, T., Piochon, M., Groleau, M.-C., et al. (2021). Total synthesis, isolation, surfactant properties, and biological evaluation of ananatosides and related macrodilactone-containing rhamnolipids. Chem. Sci. 12 (21), 7533–7546. doi:10.1039/D1SC01146D

Compton, A. A., Deodhar, B. S., Fathi, A., and Pemberton, J. E. (2020). Optimization of a chemical synthesis for single-chain rhamnolipids. ACS Sustain Chem. Eng. 8 (24), 8918–8927. doi:10.1021/acssuschemeng.0c00733

Coss, C., Carrocci, T., Maier, R. M., Pemberton, J. E., and Polt, R. (2012). Minimally competent lewis acid catalysts: indium(III) and bismuth(III) salts produce rhamnosides (=6-Deoxymannosides) in high yield and purity. Helv. Chim. Acta 95 (12), 2652–2659. doi:10.1002/hlca.201200528

Costa, S. G. V. A. O., Nitschke, M., Lépine, F., Déziel, E., and Contiero, J. (2010). Structure, properties and applications of rhamnolipids produced by Pseudomonas aeruginosa L2-1 from cassava wastewater. Process Biochem. 45 (9), 1511–1516. doi:10.1016/j.procbio.2010.05.033

Court, G. R., Lawrence, C. H., Raverty, W. D., and Duncan, A. J. (2012). Method for converting lignocellulosic materials into useful chemicals. https://patents.google.com/patent/US20120111714A1/en .

Dashtbozorg, S. S., Kohl, J., and Ju, L.-K. (2016). Rhamnolipid adsorption in soil: factors, unique features, and considerations for use as green antizoosporic agents. J. Agric. Food Chem. 64 (17), 3330–3337. doi:10.1021/acs.jafc.6b00215

De Vleeschouwer, M., Sinnaeve, D., Van den Begin, J., Coenye, T., Martins, J. C., and Madder, A. (2014). Rapid total synthesis of cyclic lipodepsipeptides as a premise to investigate their self-assembly and biological activity. Chem. A Eur. J. 20 (25), 7766–7775. doi:10.1002/chem.201402066

Diot-néant, F., Mouterde, L. M. M., Couvreur, J., Brunois, F., Miller, S. A., and Allais, F. (2021). Green synthesis of 2-deoxy-D-ribonolactone from cellulose-derived levoglucosenone (LGO): a promising monomer for novel bio-based polyesters. Eur. Polym. J. 159 (110745), 110745–110748. doi:10.1016/j.eurpolymj.2021.110745

Dulęba, J., Siódmiak, T., and Marszałł, M. P. (2020). Amano lipase PS from burkholderia cepacia- evaluation of the effect of substrates and reaction media on the catalytic activity. Curr. Org. Chem. 24 (7), 798–807. doi:10.2174/1385272824666200408092305

Flaiz, M., Ludwig, G., Bengelsdorf, F. R., and Dürre, P. (2021). Production of the biocommodities butanol and acetone from methanol with fluorescent FAST-tagged proteins using metabolically engineered strains of eubacterium limosum. Biotechnol. Biofuels 14 (1), 117–120. doi:10.1186/s13068-021-01966-2

Florent, J. C., Ughetto-monfrin, J., and Monneret, C. (1987). Anthracyclinones. 2. Isosaccharinic acid as chiral template for the synthesis of (+)-4-demethoxy-9-deacetyl-9-hydroxymethyldaunomycinone and (-)-4-deoxy-.gamma.-rhodomycinone. J. Org. Chem. 52 (6), 1051–1056. doi:10.1021/jo00382a015

Héloir, M.-C., Adrian, M., Brulé, D., Claverie, J., Cordelier, S., Daire, X., et al. (2019). Recognition of elicitors in grapevine: from MAMP and DAMP perception to induced resistance. Front. Plant Sci. 10 (1117), 1117–17. doi:10.3389/fpls.2019.01117

Jaipuri, F. A., Jofre, M. F., Schwarz, K. A., and Pohl, N. L. (2004). Microwave-assisted cleavage of weinreb amide for carboxylate protection in the synthesis of a (R)-3-Hydroxyalkanoic acid. Tetrahedron Lett. 45 (21), 4149–4152. doi:10.1016/j.tetlet.2004.03.148

Kawai, T., Isobe, M., and Peters, S. C. (1995). Factors affecting reaction of 1, 6-anhydrohexos-2-ulose derivatives. Aust. J. Chem. 48, 115–131. doi:10.1071/CH9950115

Kazemi, F., Massah, A. R., and Javaherian, M. (2007). Chemoselective and scalable preparation of alkyl tosylates under solvent-free conditions. Tetrahedron 63 (23), 5083–5087. doi:10.1016/j.tet.2007.03.083

Liu, L., Zhu, Y., Chen, Y., Chen, H., Fan, C., Mo, Q., et al. (2020). One-pot cascade biotransformation for efficient synthesis of benzyl alcohol and its analogs. Chem. Asian J. 15 (7), 1018–1021. doi:10.1002/asia.201901680

Magalhães, L., and Nitschke, M. (2013). Antimicrobial activity of rhamnolipids against Listeria monocytogenes and their synergistic interaction with nisin. Food control 29 (1), 138–142. doi:10.1016/j.foodcont.2012.06.009

Menhour, B., Mayon, P., Plé, K., Bouquillon, S., Dorey, S., Clément, C., et al. (2015). A stereocontrolled synthesis of the hydrophobic moiety of rhamnolipids. Tetrahedron Lett. 56 (9), 1159–1161. doi:10.1016/j.tetlet.2015.01.091

Menhour, B., Obounou-Akong, F., Mayon, P., Plé, K., Bouquillon, S., Dorey, S., et al. (2016). Recycling Mitsunobu coupling: a shortcut for troublesome esterifications. Tetrahedron 72 (47), 7488–7495. doi:10.1016/j.tet.2016.09.065

Merck, (2019). The future of solvents: bio renewable. The future of solvents: bio renewable. https://www.sigmaaldrich.com/IN/en/campaigns/biorenewable-solvents .

Miao, S., Dashtbozorg, S. S., Callow, N. V., and Ju, L.-K. (2015). Rhamnolipids as platform molecules for production of potential anti-zoospore agrochemicals. J. Agric. Food Chem. 63 (13), 3367–3376. doi:10.1021/acs.jafc.5b00033

Palos Pacheco, R., Eismin, R. J., Coss, C. S., Wang, H., Maier, R. M., Polt, R., et al. (2017). Synthesis and characterization of four diastereomers of monorhamnolipids. J. Am. Chem. Soc. 139 (14), 5125–5132. doi:10.1021/jacs.7b00427

Parry, A. J., Parry, N. J., Peilow, A. C., and Stevenson, P. S. (2013). Combinaisons de Rhamonolipides et d’enzymes Pour Un Nettoyage Amélioré. https://patentimages.storage.googleapis.com/8d/c4/a6/591eecb455a317/EP2596087B1.pdf .

Pattanaik, B. N., and Mandalia, H. C. (2011). Ethyl acetate: properties, production processes and applications - a review. Int. J. Curr. Res. Rev. 3 (12), 23–40.

Piljac, T., and Piljac, G. (1999). Utilisation de Rhamnolipides comme agents cosmetiques. WO1999/043334.

Rahman, K. S. M., Rahman, T. J., Kourkoutas, Y., Petsas, I., Marchant, R., and Banat, I. M. (2003). Enhanced bioremediation of N-alkane in petroleum sludge using bacterial consortium amended with rhamnolipid and micronutrients. Bioresour. Technol. 90 (2), 159–168. doi:10.1016/S0960-8524(03)00114-7

Randhawa, K. K. S., and Rahman, P. K. S. M. (2014). Rhamnolipid biosurfactants-past, present, and future scenario of global market. Front. Microbiol. 5 (SEP), 1–7. doi:10.3389/fmicb.2014.00454

Redl, S., Sukumara, S., Ploeger, T., Wu, L., Ølshøj Jensen, T., Nielsen, A. T., et al. (2017). Thermodynamics and economic feasibility of acetone production from syngas using the thermophilic production host moorella thermoacetica. Biotechnol. Biofuels 10, 150. doi:10.1186/s13068-017-0827-8

Sachdev, D. P., and Cameotra, S. S. (2013). Biosurfactants in agriculture. Appl. Microbiol. Biotechnol. 97 (3), 1005–1016. doi:10.1007/s00253-012-4641-8

Schellenberger, R., Crouzet, J., Nickzad, A., Kutschera, A., Gerster, T., Borie, N., et al. (2021). Bacterial rhamnolipids and their 3-hydroxyalkanoate precursors activate Arabidopsis innate immunity through two independent mechanisms. Proc. Natl. Acad. Sci. 118 (39), e2101366118. doi:10.1073/pnas.2101366118

Melendez, J. R., Mátyás, B., Hena, S., Lowy, D. A., and El Salous, A. (2022). Perspectives in the production of bioethanol: A review of sustainable methods, technologies, and bioprocesses. Renew. Sust. Energ. Rev. 160, 112260. doi:10.1016/j.rser.2022.112260

Sharipov, B. T., Davydova, A. N., Faizullina, L. K., and Valeev, F. A. (2019). Preparation of the diastereomerically pure 2S-hydroxy derivative of dihydrolevoglucosenone (Cyrene). Mendeleev Commun. 29 (2), 200–202. doi:10.1016/j.mencom.2019.03.029

Van Aken, K., Strekowski, L., and Patiny, L. (2006). EcoScale, a semi-quantitative tool to select an organic preparation based on economical and ecological parameters. Beilstein J. Org. Chem. 2 (3), 3–7. doi:10.1186/1860-5397-2-3

Voigtritter, K., Ghorai, S., and Lipshutz, B. H. (2011). Rate enhanced olefin cross-metathesis reactions: the copper iodide effect. J. Org. Chem. 76, 4697–4702. doi:10.1021/jo200360s

Wang, D., and Nugent, W. A. (2007). 2-Deoxyribose as a rich source of chiral 5-carbon building blocks. J. Org. Chem. 72 (19), 7307–7312. doi:10.1021/jo0712143

Weizmann, C., and Rosenfeld, B. (1937). The activation of the butanol-acetone fermentation of carbohydrates by Clostridium acetobutylicum (Weizmann). Biochem. J. 31 (4), 619–639. doi:10.1042/bj0310619

Keywords: crop protection agent, cross-coupling, green chemistry, levoglucosenone, Michael addition

Citation: Petracco E, Flourat AL, Belhomme M-C, Castex S, Brunissen F, Brunois F, Peru AAM, Allais F and Haudrechy A (2024) Green synthesis of ( R )-3-hydroxy-decanoic acid and analogs from levoglucosenone: a novel access to the fatty acid moiety of rhamnolipids. Front. Chem. 12:1362878. doi: 10.3389/fchem.2024.1362878

Received: 29 December 2023; Accepted: 11 March 2024; Published: 19 April 2024.

Reviewed by:

Copyright © 2024 Petracco, Flourat, Belhomme, Castex, Brunissen, Brunois, Peru, Allais and Haudrechy. This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.

*Correspondence: Amandine L. Flourat, [email protected] ; Florent Allais, [email protected] ; Arnaud Haudrechy, [email protected]

† These authors have contributed equally to this work

IMAGES

  1. 1.12

    analysis and synthesis phase of assembler

  2. Synthesis Phase in Compiler Design

    analysis and synthesis phase of assembler

  3. A science of analysis + synthesis

    analysis and synthesis phase of assembler

  4. assembly

    analysis and synthesis phase of assembler

  5. Detailed analysis and synthesis process.

    analysis and synthesis phase of assembler

  6. A science of analysis + synthesis

    analysis and synthesis phase of assembler

VIDEO

  1. Solid Phase Synthesis

  2. Phases of Compiler

  3. Lecture No#1.Introduction to Computer Organization and Assembly Language

  4. combinatorial chemistry

  5. Assemble Computer Hardware with Explanation CSS-NC-II part 7

  6. Phases of Compiler

COMMENTS

  1. Phases of a Assembler

    The Assembler is a program that converts assembly language into machine language that can be executed by a computer. The Assembler operates in two main phases: Analysis Phase and Synthesis Phase. The Analysis Phase validates the syntax of the code, checks for errors, and creates a symbol table. The Synthesis Phase converts the assembly language ...

  2. Analysis and synthesis phase of compiler

    Synthesis phase of compiler. It will get the analysis phase input (intermediate representation and symbol table) and produces the targeted machine level code. This is also called as the back end of a compiler. There are two main phases in the compiler.In this tutorial, we will learn the roles of analysis and synthesis phase of a compiler.

  3. 3.4 Assembler Design specification

    In this, explain the Design specification of an Assembler, Synthesis Phase, Analysis Phase, Data Structures of the assembler with diagram and Tasks perform b...

  4. PDF CS 4300: Compiler Theory Chapter 1 Introduction

    Analysis and Synthesis. There are two parts to compilation: Analysis breaks up the source program into constituent pieces and imposes a grammatical structure on them. It then uses this structure to create an intermediate representation of the source program. The analysis part also collects information about the source program and stores it in a ...

  5. PDF CS143 Handout 02 Summer 2012 June 25, 2012 Anatomy of a Compiler

    representation of the program. Then, the synthesis stage constructs the desired target program from the intermediate representation. Typically, a compiler's analysis stage is called its front end and the synthesis stage its back end. Each of the stages is broken down into a set of "phases" that handle different parts of the tasks.

  6. PDF Principle of Compilers Lecture I: Introduction to Compilers ...

    Compilation can be divided in two parts: Analysis and Synthesis. 1. Analysis. Breaks the source program into constituent pieces and creates intermediate representation. 2. Synthesis. Generates the target program from the intermediate representa-tion. The analysis part can be divided along the following phases: 1. Lexical Analysis; 2. Syntax ...

  7. 1.12

    In this, explain the Design specification of an Assembler, Synthesis Phase, Analysis Phase, Data Structures of the assembler with diagram and Tasks perform b...

  8. PDF Formal Languages and Compilers Lecture I: Introduction to Compilers

    Compilation can be divided in two parts: Analysis and Synthesis. 1 Analysis. Breaks the source program into constituent pieces and creates intermediate representation. 2 Synthesis. Generates the target program from the intermediate representation. The analysis part can be divided along the following phases: 1 Lexical Analysis; 2 Syntax Analysis;

  9. compilerarchitecture

    Compilers perform translation. Every non-trivial translation requires analysis and synthesis: Both analysis and synthesis are made up of internal phases. Compiler Components. These are the main functional components of a production compiler that looks to generate assembly or machine language (if you are just targeting a high-level language like ...

  10. PDF Writing an Assembler: Part 1

    Synthesis. In the first version of our assembler, there's nothing to do for Semantic Analysis, so let's move on to Synthesis. Let's assume we have extracted the key information from each tokenized line, and we want to generate machine code. add $3, $2, $1 → { instr: "add", s: 2, t: 1, d: 3 }

  11. PDF Module 1: Assemblers

    The assembly process is divided into two phases - ANALYSIS, SYNTHESIS. The primary function of the analysis phase is building the symbol table. For this, it uses the addresses of symbolic names in the program (memory allocation). For this, a data structure called location counter is used, which points to the next memory word of target program.

  12. Compiler Design

    The compiler's analysis and synthesis part is grouped into 6 phases and is shown in Figure 1.6. The first three phases belong to the analysis phase and the last three phases to the synthesis phase. ... Code Generation: This phase generation target assembly language. In this phase, the registers or memory locations are selected for each of the ...

  13. 1.5: Compiling- Analysis Phase

    The phase of the compiler splits the source code into tokens. A lexical token or simply token is a string with an assigned and thus identified meaning. It is structured as a pair consisting of a token name and an optional token value. Common token names are. identifier: names the programmer chooses; keyword: names already in the programming ...

  14. Compiler Design

    The Analysis-Synthesis model: The front end phases are Lexical, Syntax and Semantic analyses. These form the "analysis phase" as you can well see these all do some kind of analysis. The Back End phases are called the "synthesis phase" as they synthesize the intermediate and the target language and hence the program from the representation ...

  15. PDF 3.1 Phases of compiler

    If we look into the analysis and synthesis parts of the compiler, there are further sub-parts of these blocks, each of these transforms one representation into another. These sequence of ... and significant amount is spent in this phase. 3.1.6 Assembler The assembly code generated for the current example is shown in Fig. 3.2 (G). This code,

  16. PDF

    In the next few slides we'll see a complete - but very very simple - compiler. The input: a string of characters representing an arithmetic expression. The output: a sequence of instructions for a simple stack-based computer. When these instructions are executed, the expression is evaluated.

  17. PDF Phases of Compiler

    A phase is a logically interrelated operation that takes source program in one representation and produces output in another representation. The phases of a compiler are shown in below There are two phases of compilation. Analysis (Machine Independent/Language Dependent) Synthesis(Machine Dependent/Language independent)

  18. PDF Computational Assemblies: Analysis, Design, and Fabrication

    This tutorial will introduce computational techniques for analysis, design, and fabrication of assemblies, respectively; see Table 1 for the tutorial outline. Table 1: Tutorial outline. 2. Scope and Target Audience. This tutorial requires some basic knowledge in computer graphics (e.g., shape representations, transformations) to understand how ...

  19. Two Pass Assembler Source Code

    An assembler is a language translator whose source language is assembly language. Language processing activity consists of two phases, Analysis phase and synthesis phase. Analysis of source program consists of three components, Lexical rules, syntax rules and semantic rules. Lexical rules govern the formation of valid statements in source language.

  20. Issues, Importance and Applications of Analysis Phase of Compiler

    The analysis phase of a compiler is an important step in the process of converting source code into an executable form. Some of the key applications of the analysis phase include: Tokenization: During the analysis phase, the compiler breaks the source code down into smaller units called tokens. These tokens represent the different elements of ...

  21. Heliconical nematic and smectic phases: the synthesis and

    ABSTRACT. The synthesis and characterisation of two series of nonsymmetric dimers belonging to the family of compounds, the 1-(4-cyanobiphenyl-4′-yl)-ω-(4-alkylanilinebenzylidene-4′-oxy)alkanes (CBnO.m) is reported; in the acronym, n refers to the number of carbon atoms in the spacer, and m in the terminal alkyl chain. The two series reported, CB4O.m and CB8O.m, both show twist-bend ...

  22. Synthesis of goldene comprising single-atom layer gold

    Ti3SiC2 is a renown MAX phase, where M is a transition metal, A is a group A element, and X is C or N. Our developed synthetic route is by a facile, scalable and hydrofluoric acid-free method. The ...

  23. Formation of carbon with a diamond-like lattice during the production

    Magnesium aluminate spinel (MAS) containing a carbon impurity was prepared by self-propagating high-temperature synthesis (SHS). Periclase MgO, alumina Al 2 O 3 , fuel Al powder, 2 wt% boron, and oxidizer Mg(NO 3 ) 2 ·6H 2 O were used as starting reagents for MAS synthesis. The phase composition of original boron and synthesized products, the structure and surface morphology of the samples ...

  24. Design and synthesis of nickel-doped cobalt molybdate microrods: An

    Ronidazole (RDZ) is a veterinary antibiotic drug that has been used in animal husbandry as feed. However, improper disposal and illegal use of pharmaceuticals have severely polluted water resources. Doping/substitution of metal ions is an effective strategy to change the material's crystal phase, morphology, and electrocatalytic activity. In this work, nickel (Ni<SUP>2+</SUP>)-doped cobalt ...

  25. Single-Step Combustion Synthesis of Cerium Aluminate in the Presence of

    Abstract. Cerium aluminate, CeAlO 3, was prepared in the presence of copper in a single-step combustion synthesis without the need for post-synthesis calcination.The prepared material was investigated using x-ray diffraction followed by whole powder pattern decomposition, scanning electron microscopy, energy-dispersive x-ray spectroscopy, Fourier-transformed infrared spectroscopy, UV-Vis ...

  26. Green synthesis of (R)-3-hydroxy-decanoic acid and analogs from

    We have previously published articles focusing on (di-)lipidic HAAs synthesis starting from an acetoxyester (Menhour et al., 2015; Menhour et al., 2016).This compound is generated in two steps: 1) the condensation of acrolein with tert-butyl acetate leading to the racemic tert-butyl 3-hydroxypent-4-enoate and 2) the subsequent PS Amano lipase-biocatalyzed enantioselective acetylation (Dulęba ...